automatic loading of constants

Take a controller file that's been required and load the file's
constant we expect it to define. For example:

```ruby
class SunGlassesController < Unveil::Controller
  # ...
end
```

We will take ```sun_glasses_controller``` and work out that we need to
load the constant ```SunGlasses```.

To prevent automatic loading error for missing const:

If there is a controller file that we are automatically loading
based on it's filename, but the controller doesn't define the constant
we think it should be, i.e.

```ruby
class NotWhatISaidIWasController < Unveil::Controller
end
```

Then we would cause a ```stack level too deep``` error, when ruby
tries to continuously loop through getting the constant, calling
const_missing, then trying to get the constant again because it's
been overridden, in a loop until the interpreter crashes out.
Merge pull request #3 from the-undefined/auto-loading

automatic loading of constants