First pass at using a Null singleton object instead of null
Moved all local methods to node object methods. Added select/rank. More tests.