Implemented collision submodule, added exceptions, bugfix in geometry