Commit 1.3.0

Memory
• New Pointer class for reference counting
• Added type constraints to Pointer
• Added STM system
• Fixed Array Allocation by adjusting the pointer to the child of the head

Reflection
• added instanceOf function
• added new base types for int, float, bool, and string that follow the Gem::Reflection system

Minor
• added new FileIO system to integrate into EC
• dont use constructors or destructors with Components
• Discovered the way to declare types into a managed reflection system through macros.