Add type check to FLOAT_CAST
Add some comments around unary types
ceil, floor return double
Add tests for ceil, floor