Created the Visibility component.
Added an accessor to access the "parent" member in entities.
Added message handling to the Visibility component.
Added messages that are sent when components are added and removed to/from an Entity.
Fixed the generatetID typo to generateID.

Merge branch 'develop' into feature/ChildSupport

Conflicts:
	BaconBox/Core/Entity.cpp
Added the concept of component connections to keep component pointers updated.
MeshDriverRenderer now uses the Visibility component.
Fixed the support for the component connections.
Fixed the ComponentConnectio pattern.
Created the TimelineEntityManager component.
Wrote a first draft of the TimelineEntityManager abstract component.
Created the Scene struct and integrated it in the TimelineEntityManager class.
Added the component ID macro for TimelineEntityManager.
Created the DefaultTimelineEntityManager class.
Removed the Scene and Frame label stuff.
Added the child management functions to the TimelineEntityManager class.
Rearranged the TimelineEntityManager in two separate components.
Wrote a basic implementation for the Timeline class.
Started the default implementation for the EntityContainer component.
Continued the default implementation for the EntityContainer component.