Cleaned up and refactored platform boot sequence.

- First all pluggdapps-packages are gathered from the environment.
- Then gathered packages are loaded.
- And during platform boot-time, package entry-point is called.
- added namespace for plugins. Every plugin name can be queried and accessed
  by prefixing its class-name with package name. This is not the canonical
  form for plugin-names. For example, plugin `ConfigSqlite3DB` defined in
  pluggdapps package is to be accessed as, `pluggdapps.ConfigSqlite3DB`.

- Every instantiated plugin will now have a `caname` attribute that provides
  the canonical name of the plugin. This is automatically populated by
  component-arch during plugin instantiation.

- query_plugin() and query_plugins() method calls now supports `interface`
  argument as string of interface-name, specified in canonical-form.

- plugincall() pluginname() function is removed and canonical_name() function
  is added in pluggdapps.plugin module. Note that the new function is to be
  called only by logic inside PluginMeta class.

- pluggdapps.initialize() is now pluggdapps.callpackages().
- platform.Pluggdapps class has _preboot() local method to handle pre-booting
  logic.
- plugins are queried / referred in canonical-form.