Book upload refactor

Added test, new redirect and cleaned up extant files. 

Tried to find areas to refactor the model -but didn't really find any. You had previously said that the code in the model wasn't really ruby-style; if you still feel that way, can we pair up on a refactor so I can see what you mean?