Add isTouching and getVectorToObject to MyShape

PHYS-16 #time 1h

This is a much better place to put these functions, as it's actually
object oriented, and doesn't rely on random functions in the
Interactions class.

getVectorToObject(MyShape) is much more intuitive to work with than
the previous getVectorToObject2( MyShape1, MyShape2).

This took at least 45 minutes longer than it should have because I
didn't initialize a damn bool, throwing me into an infinite loop
because isTouching always returned true.
Refactor to use isTouching method

PHYS-16 #time 25m

There are a few more places I need to use this method in this class, but
it's late and I am le tired.
Add new shape to list AFTER conflict is resolved

PHYS-16 #time 15m

This is a better approach because I don't have to awkwardly retrieve the
new item from the end of the list, and then iterate through all the
items before it.