Optimize ScalarBaseMult

Code uses a windowing/precomputing strategy to minimize ECC math.
Every 8-bit window of the 256 bits that compose a possible scalar multiple has a complete map that's pre-computed.
Main function is computeBytePoints which computes all the 256 possible combinations in that 8-bit window. This is used then to look up the point values so it minimizes the ScalarBaseMult operation.

Also fixed a spelling error in a benchmark test.

Results so far seem to indicate the time taken is about 35% of what it was before.

Closes #2