accomodates more shapes

changes shape object to arraylist<shape> object