Add a memoizedproperty decorator to cache expensive properties
Finish supporting max_length
Correctly determine location of description block
Get string representations working