Updated to use bcmul for conversion of float to integer to avoid precision issues. If bcmul does not exist we revert to standard multiplcation
Fixed issue with float conversion dropping 1 from the amount value