Experimenting with requiring entity to exist for component construction (ref being passed in constructor).

- Passing a reference to owner in the constructor will allow entity to be accessed while the
    component is being constructed some types of components will need to access other components
    or the entity's space during construction (for example, a level loading component). Not sure
    if I prefer this to using a separate init method, but so far the engine has been designed
    with RAII in mind (as an experiment) - do having a separate init method would go against
    this. Will need to play with this more to see if maybe there's a better solution, or if this
    is an acceptable one.
Updated cppclassgen to allow template to be specified.
Fixed typo in component cppclassgen template file.
Removing accidentally commited files.
perf_vis is now a component.