close to working bouncing. a bit more to adjust
bouncing with spinning depending on speed and orientation. Messy code to be fixed. Plus bug in checking bounds when in bounce mode