cleanup code
started tests
test cannon
Merge branch 'tests'
fix tests