Major refactor for simpler configuration

Refactor the guts to support a drastically reduced plugin settings
file. Auto-detect as much as humanly possible. Start introducing
classes to break out the commands and split up the build system.