start working on the Titan GO implementation

- remove all the bloat from the abstract model
- define types inside the graph