Changes from the 1.4.0 to 1.6.0
-------------------------------
** Improvement
    * [FELIX-1427] - Service injection with Smart Proxies
    * [FELIX-1906] - Allow calling a method when service properties of an already injected service are modified
    * [FELIX-2268] - Simplify setting of properties.

** New Feature
    * [FELIX-2132] - Provides a way to control service exposition from the implementation class
    
Version 1.4.0
-------------
    
** Bug
    * [FELIX-965] - Avoid classloading issue if an already manipulated class is used by the API

** Improvement
    * Update parent pom
    * Initial commit
    
   
