This adds support for the `unsigned_long` type. The type can be now used with the defined math function, both scalar and MV'ed, arithmetic and binary comparison ones. The `to_unsigned_long()` conversion function is also added.