better tests in allocator

Summary:
I noticed random failures in the storage/allocator tests. Saw that the RNG seed wasn't used in allocate() and fixed that, but the real problem is that ranging over maps has no well-defined order and resulting slices may have their elements interchanged. Added an order-agnostic comparison helper to util/testing to address this.

Update:
http://golang.org/doc/go1.3#map

It seems very wise to fix this source of randomness in our code rather than trying to work around it, so that's what I'm doing now. Will update the diff soon.

Test Plan: make test

Reviewers: andybons, spencerkimball

Reviewed By: spencerkimball

Differential Revision: http://phabricator.cockroachdb.org/D62