There hasn't been much out of me for a week, so I decided it was about time for an update. I was feeling a little under the weather all of last week (note that loss of appetite is now my least favorite symptom) and hence did not get a lot of work done, or at least not nearly as much as I was hoping to get done.
What did get done last week was some [very basic] documentation of the interface which, at least for now, exists on my website. I started work on changes to the interface also as suggested by comments on my Decisions, Decisions post (these changes which are yet to be reflected in the documentation). I have decided to go with the "is_" prefix and remove the static method decorators. Tomorrow I'm going to try once more to move all of these methods to an external location (util.py) so that I get the best of many worlds (are_*** prefix, can potentially be used in a more general context, less bloated classes). If that fails I will keep things as they are and move on. At least removing the static methods has taken take care of one thing, and that is hiding the LinearEntity class.