Refacotring Shifts

# What is the problem / feature ?

The shifts grid was  previously taking approx 75 database calls to render the page.

# How did it get fixed / implemented ?

The page now requires 1 database call. There may still be some excessive sorting. Overlapping shifts may also be a problem, but we can burn that bridge when we get to it.

# How can someone test / see it ?

visit http://voldb.herokuapp.com/

![cat-derp](https://f.cloud.github.com/assets/611731/2427511/9c6813bc-abef-11e3-870f-f5bbbc7b8015.jpg)