DrawableShape -> GraphicObject, add collision concept to shapes