Portable Class Library support for Ninject

Support .NET 4, SL4, WinRT and WP7.1 libraries in a single set of packages.

Split the core base classes and interfaces into Ninject.Common as a PCL. Remaining platform-specific logic is in Ninject.

Only the entry-point needs the Ninject reference; Ninject modules just need Ninject.Common, so they can be portable.

The code has the latest Ninject master already integrated before the refactor.