Make `Qs::Daemon` a mixin, not a class

This is a small change to make the `Qs::Daemon` more like the
`Deas::Server`, a mixin that is used to define a daemon. This will
be changed more to work like the `Deas::Server` but this change
revealed an issue with the file evaluation. This switches our
file evaluation to use Rack's trick of evaluating the file's
contents into a proc and then instance evaluating that. This
produces more expected behavior. The previous implementation had
the side effect of defining constants namespaced to the instance
of the `Config` that evaluated them. This was very confusing in
the tests and could have other issues, so I decided to switch it
to the less-simple implemenation from Rack. I believe this will
produce more expected results and not cause any strange errors
down the road.
Add daemon configuration, provides options and validation

This follows the Deas pattern for a server's configuration and
add's a configuration class for a `Daemon`. This provides the
daemon options and will validate the configuration. This will
allow user's to customize a daemon and also ensure that their
configuration and queue will run as expected. This provides a
friendlier experience than it erroring later after the process
has already started and tries to run a job.