Move Dancer::Factory::Engine to Core and rationalize

This module is also used for Handler classes, which don't
implement the Engine role.  Since the name -> class mapping behavior
is tightly tied to the core, it makes more sense for it to merely
be a Core component: Dancer::Core::Factory.

I also switched it to use ModuleLoader instead of string eval.