Added in BigNumber for floating point calculations

 * All money calculations are now done using BigNumbers
 * This solves issues like 0.5-0.4=0.999999998