Right now most elements are defined as either ThinElement or ThickElement (some are just BaseElement), how to handle elements that can be either thick or thin (e.g., Kicker)? Is just defining them as BaseElement the way to go or should we come up with another way?