Complete Horizontal Collision detection, needs refactoring