Add availability to the record view

Closes #293 

This adds various status classes to handle the logic of what the item status for a library/location/type combination is.  I have created a few tickets for things that need a little more considerations before porting the code over from the old codebase.  I think this gives us a good base to start from so we can begin to work on those tickets, as well as more that come up through testing and reviewing the old codebase.

Few examples:

### 9943560
---
![9943560](https://cloud.githubusercontent.com/assets/96776/3324013/a80219d6-f774-11e3-9e80-36bdfbefe101.png)

### 10151500
---
![10151500](https://cloud.githubusercontent.com/assets/96776/3324016/b5522cca-f774-11e3-9807-720944217000.png)