Math lib update

1) Exposed more functions from LLVM and libm
2) Added `significant` and `round` methods for `Number` so as to round to significant and decimal places
3) Extended relevant math specs
Thanks @asterite, will do this change today or tomorrow, together with any other corrections you may suggest. I realised that by mistake I deleted the spec check for the value of the E constant, will fix this too.