refactored rectangle methods so edit points directly
too many changes to name