DeviceDiscovery:

 - add JSON serialization
Add flexjson 3.2 as a project dependency.
Add a structured version information class in the base package.
This should be moved to OpenRemote-Base project once it has been
created.
DeviceDiscovery:

 - Import the version class from OR base package.
Add constraint exception type to project.
JSONTransformer:

  - a generic extension of FlexJSON AbstractTransformer class that
    (1) provides a type safe API (2) hides some FlexJSON API details
    from implementers
Adds a OR specific runtime exception type that can be used to
indicate implementation errors -- reaching code paths that
correctly functioning code should not reach. Using explicit
type helps differentiate code errors originating from OR code
from potential exceptions from third party libs that might use
more generic pre-existing exception types.

Class should be moved to base package once that project is
created.
Adds a FlexJSON transformer for DeviceDiscovery instances.
DeviceDiscovery:

  - rename serialization.json to data.json package
JSONTransformer unit test for type conflict error handling.