For consideration - MonoGame.Portable

This is a PCL variant of the MonoGame framework, effectively another platform.

The allows the full MonoGame framework to be used as a reference to PCL libraries for development purposes.

This allows a PCL project to host the majority (if not all in most cases) game code within a PCL library.  When combined with a platform version of MonoGame this allows the game to be run from the PCL project using that platforms implementation of MonoGame.

Note, although this PR has updated several classes, the only thing that has been added are #IF precompilers to ignore incompatible code whilst is is being accessed from a PCL project.

Have tested all other platform builds with the new precompilers added with no downturn effect.