~~It seems that the only values `tail_type` gets are `"None"`, `"Cat"`, `"Smooth"` and `"Monkey"`. Am I missing something?~~    Alright, I see what you mean now that I look at the code a bit closer.  Just document the variables at their definition, stating that they're nullable, and how they behave when null-valued.