Re-implement more efficient GetBust

 #100 Was lost in a merge at a2049be03ac5adf025f645815c70d8d9b1316425

before:
````
BenchmarkGetHead         5000000               613 ns/op
BenchmarkGetHelm          200000              9464 ns/op
BenchmarkGetBody          100000             20008 ns/op
BenchmarkGetBust          100000             26295 ns/op
````

after:
````
BenchmarkGetHead         5000000               623 ns/op
BenchmarkGetHelm          200000              9424 ns/op
BenchmarkGetBody          100000             19115 ns/op
BenchmarkGetBust          200000             14813 ns/op
````

er well... it'd probably be a good idea to catch and return more errors than we currently do.