Enforce level and character class uniqueness

A character should not be able to have duplicate character classes or
levels. This patch ensures that a unique restraint is enforced on the
charcater/character_class and character/levels relation.
Add admin options to character sheets via AJAX

Because the character sheet is heavily cached, admin options needs to
be loaded in via AJAX.

NOTE that the `$(document).foundation()` might be very resource
intensive, and that another implementation should probably be thought
of.
Improve documentation for utils controller
Improve carrierwave configurations

This ensures that the carrierwave base always includes the cludinary
module. It also sets the storage to file system unless we’r in the
production environment, and it disables file processing for the test
environment.
Improve Level#available_to method

This ensures that the `Level#available_to` method returns a collection,
not an array. This means, that the level or control in regards to
sorting is greater.
Improve Character#can_level_up?

This now ensures that the #can_level_up? method indeed calculates
correctly. It also fixes a problem with the seed data, where the d&d
algorithm would always return zero (0).
Only display class label if classes are available
Sort characters by updated_at

This sorts the characters on the user’s home screen by when they where
last updated (newest first), while keeping the ingame ones at the top,
the completed ones in the middle and the incomplete ones in the bottom.
Customize devise views
Move menu to top