Cleaning Up Ordinals

Using some meta-programming to clean up ordinal methods.