Collision detection

works downward, but needs to e debugged for other directions, not tested
upwards yet... also refactored some design and made some consept art