Adds transaction serialization to Priority sorting.

acts_as_list doesn't protect sort operations from data corruption
in concurrent operations over the same data, so it has to be manually
implemented. I'm using the transaction_isolation gem to elegantly
handle this here.