add cancancan and rolify

put a few abilities in app/models/ability.
Nothing tested
add load_and_authorize_resource to books, authors

not yet full coverage - testing admin can manage all
tidy books_controller
add approvable? method to books

not tested
add approved field to books

rails g migration add-approved-to-books approved:boolean
add_column :books, :approved, :boolean, default: false
rake db:migrate
add conditional for user admin approvable book index
only show approved books to the general audience

also add a checkbox for approving to admin's view (non functional)
require cover to approve, closing (#7) and (#21)

That's Renée's features 3 and 17.

BooksController:
    allow owner or admin to update book
    add approve, deactive, reactivate methods
    add approved to params

Books:
    add approve! and toggle_active! methods
    add not approved to approvable? method

Books index:
    column in admin view with links to approve, deactivate, reactivate book

Book show:
    remove extra line

config/routes.rb
    add approve, deactivate, reactivate routes to book members

spec/controllers/books_controller_spec.rb
    add approved to valid_attributes

spec/features/books_spec.rb b/spec/features/books_spec.rb
    only do one approved and one unapproved book per Index test
    it 'should not list the unapproved book titles'
    it 'should list the approved book titles'
    describe 'As Admin'
      it 'should list the unapproved book titles'
      it 'should let us approve unapproved titles'
      it 'should let us deactivate approved titles'
      it 'should let us reactivate deactivated titles'

100% simplecov, all tests passing
flay: 1573
flog: 2721.6 / 10.3
Merge pull request #114 from nbirnel/roles-and-authorization

admin approves books, which require a cover. non-admin cannot see unapproved books.