Merge branch 'release/v1.3.5' into develop
Removed unused files.
Removed the IComponent interface.
Added Ninject modules for registering components.
Added a PluginModule responsible for registering plugins.
Modules can now load from specified assemblies.
Added ability to create child resolvers.
Plugin loaders now return raw assemblies instead of types.
Changed a constructor to private.
Changed the IPluginManager definition a bit.
The Ninject dependency resolver now loads all modules by default.
Added the Component attribute to classes.
Cleaned up the default plugin engine. It now uses child kernels and resolves the plugins there.
Bug fix in the binding.
Updated the IPluginLoading message and began sending it before we load the plugin.
Removed Assembly.* keys from config file and instead load all DLLs in working directory.
Merge branch 'feature/di-improvements' into develop
Added a Bootstrap function to Kernel which takes care of loading all assemblies in the workingDirectory path.
Added try-catch to assembly loading since it can happen that we load SQLite.Interop.dll (which is not a .NET assembly).
Ignore failure when installing firewall rules since the firewall service may not be running. Closes #20.