Trying to build the architecture (broken as of now).
Architecture fix (TODO fix tests)
Fixed tests; TODO write more tests