Bleeding Edge -> TridentSDK

The interface API changes are made to update the API to a factory based design.

Changelog:
- Concurrent package refactors
- Compilation errors fixed
- Events refactored
- Licensed to Apache 2.0