Changes from the 1.6.0 to the 1.7.0
-----------------------------------
** Improvements
    * Integration with the webconsole 4.x

** Task
    * [FELIX-3921] - Update pom to latest Felix's parent

Changes from the 1.4.4 to 1.6.0
-------------------------------
** Improvements
    * Integration with the webconsole 3.x

Changes from the 1.4.2 to 1.4.4
-------------------------------
** Bug
    * [FELIX-1579] - iPOJO Web Console Plugin 1.4.2 does not work as expected

Changes from the 1.4.0 to 1.4.2
-------------------------------
** Bug
    * [FELIX-1497] - iPOJO Web Console plugin NPE when the service reference list is null


Version 1.4.0
-------------
** Improvement
    * Update parent pom
    * Initial commit


