Renderer Plugin Architecture

Introduction
-----------------
You can now create and utilize plugins that applies scene-wide effects! The plugin system allows a more flexible way of adding in scene-wide effects that do not necessarily rely on `PostProcessingRenderer` (this too will soon be refactored as a plugin soon). You will also be able to stack scene-wide effects with multiple plugins as well. The order of plugins will affect how the effects get stacked.

Note for Plugin Authors
----------------------------------
Due to the nature of the plugin system, you are on your own for setting up the GL calls necessary for rendering. The plugin system lets you easily reuse lot of the features in Rajawali such as managing textures via `TextureManager` and pushing array buffers to OpenGL via `Geometry3D`. Still, plugin authors should be comfortable with the OpenGL ES 2.0 API to render scene-wide effects.