Speed-up path element operations & comparisons

Avoid repeated expensive operations in `STPathElement` (e.g. calls to `base_uint::isZero`) and attempt to make comparisons of path elements faster by calculating a path id and using it to avoid expensive comparisons between `base_uint` objects.

This is pending a performance review.
I'm using CRC32 to do the same thing:

https://github.com/rubblelabs/ripple/blob/ed98ccb858c6124de696eee1bc60ad9ec76dd2c6/data/path.go#L94-L103

It's a native instruction in Go with SSE 4.2 upwards:

http://golang.org/src/pkg/hash/crc32/crc32_amd64.s