Refactored models to use the Bookmark model from blacklight and a new join table for the position behavior.  Story #31.

Why does this have to be done as a callback? It seems like it would be easier to understand if it was just done in the method.