Shapes and renderers

A set of abstract shapes have been defined. These shapes could be used for renderers but also for other stuff (e.g. collisions). They will also be used for empty renderer.

Subsequently, shape renderers have been refactored. A processor has also been created so they are now ready to use.