GTSubmodule

_Depends on #173._

**To do:**

 - [x] Add unit tests