Rewrite Money class and simplify ICurrency

- get rid of Money::$decimals and $sign
- use math instead of string ops
- introduce Money::toInt() and toFloat()
- currency subunit is handled by ICurrency