Fixed wall collision and efficiency

Modified the wall collisions to now move you back based on your speed
(the item needs a .speed variable now) instead of just the direction.

Also fixed the loops in the offset function so it will now calculate
which items are on the screen and only loop through those. Far more
efficient. Need to modify it now to work with more than one item