It seems like the NotImplemented singleton is a special case only meant for use in comparison methods. I think we should switch this to only supporting NotImplementedError.

@jasongrout thoughts?