implement past handle to prepare for rotate
add rotate tool
add rotate tool
name tool should be singular
past handle should correctly identity top handle
update rotate code to handle more complicated alogorithm(still doesnt work)
Merge branch 'rotate'