added area and perimeter functions