BigNumber bitwise opts

As of now the gated bitwise opts are completely precise; it doesn't make sense any other way. However, the shifts are not fully precise; I wanted to get your opinion on that.

There a few touch-ups in here, as well as the addition of `~` into the parser.
#86
It makes sense, I wasn't sure where to put the number logic, so I "flipped a coin", and put in there. I'll extract it into /lib/function/bitwise/leftShift.js.