implement truncate, round, ceiling, and floor in terms of proper-fraction