rename AbstractShape to GraphicShape, as it not Abstract anymore
#29 add comments to function