The internal package representation is now JSON agnostic + streamlined configuration and dependency handling.

Still missing for the new configuration handling:
 - A way to select which configuration to use for a dependency (instead of the default "library")
 - New method to define a default configuration per platform and mode (application/library)