Changes from 1.0.2 to 1.0.4
-----------------------------
** Improvement
    * [FELIX-5510] - Remove usage of org.json form web console plugins


Changes from 1.0.0 to 1.0.2
-----------------------------
** Bug
    * [FELIX-3968] - StringIndexOutOfBoundsException in packageadmin plugin
    * [FELIX-4996] - Dependency Finder should use Inventory instead of deprecated ConfigurationPrinter

** Improvement
    * [FELIX-3656] - Change the label for the dependency finder plugin to "Dependency Finder" from "Packages"
    * [FELIX-3861] - Set felix.webconsole.category on Web Console plugins
    * [FELIX-4430] - [PackageAdmin Web Console Plugin] Provide using bundles with versions

Initial Release 1.0.0
---------------------

** Improvement
    * [FELIX-3026] - Add PackageAdmin information to Configuration Status dump
    * [FELIX-3444] - DependencyFinder should use JQuery UI table look
    * [FELIX-3474] - Make package admin work with J9 and other embedded VMs
    * [FELIX-3476] - Make package admin to use SimpleWebConsolePlugin
    * [FELIX-3484] - Package admin plugin is missing German localization

** New Feature
    * [FELIX-2209] - Implement a PackageAdmin plugin
    * [FELIX-3007] - Simple Package Admin plugin
    * [FELIX-3045] - new webconsole plugin - dependency finder

** Task
    * [FELIX-3529] - Add DEPENDENCIES file
