introduced some convenience macros
introduced number conversions which include assertions if conversion is not safe