outsourced some code. returning a structured UIView subclass now for better customization