added some new comparisons (which work for any number) also cleaned up a
bit of old code to use current conventions(type errors, constructors
that kinda thing)