Improve the way OnTextChange events are handled in vector inputs in the scene editor.

This commit also adds support for cycling between the text boxes with tab. This is hacky for the moment until proper tab cycling is added to the underlying GUI system.
Fix a bug in StaticMeshCollisionShape where an incorrect triangle count was being used.
Add a class called MeshCollisionShape which is basically the same as StaticMeshCollisionShape except that it inherits off btGimpactMeshShape.
Add beginning of the GTEngine.PointLightComponent to the scripting environment.
Add the ability to add a point light to the scene.

For the moment this uses a scaled sphere for it's visual representation, but what we will probably need to do is add support for drawing sprites because we don't want to have a model component attached to a light by default...
Make it so the wireframe rendering in the default scene renderer does not have any diffuse or shininess.

This makes the selection wireframe in the editor look much nicer and correct.
Add some attributes to EditorMetadataComponent to allow a custom model to be specified.

As of this commit nothing actually uses this. What this is useful for is to allow something like a sprite to be used in an editor instead of having to add a special node with a ModelComponent. This system should be a bit simpler than that.

One of the properties is a custom transformation. When enabled, the scene node transformation will be ignored and the custom transformation used instead. Really useful for doing camera-facing billboards/sprites.
Add default initialisers in EditorMetadataComponent.
Integrate support for EditorMetadataComponent models into the default renderer.

The default renderer needs a bit of a refactor after all these editor additions. Lots of duplicated code and messiness.
Have lights use the model attribute of EditorMetadataComponent for displaying.

Future commits will make these sprites, but we'll leave the picking volumes as cubes for simplicity.
Fix texture coordinates in VertexArrayFactor::CreatePlaneXY().
Add a material for use with sprites in the editor.
Have lights start off with a scale of 1,1,1 instead of 0.25,0.25,0.25.
Fix a bug in the default renderer where the incorrect material was being used with editor models.
Add Math::CalculateLookAtMatrix().
Change the return value in EditorMetadataComponent::SetModel().
Add a temp texture to use for light sprites in the editor.
Have lights use sprites for their visual representation.
Improve the way sprites are done in the editor.

Selection is broken in this particular commit, but will be re-added in near future commits.
Fix sprite selection in the scene editor.