Uses config API instead of bower.json

This swaps out all the references to `this.cpui.paths` to use `this.generator.get('path')`. We're also setting up a default config so that if any of the keys (or the entire `.yo-rc.json` file is missing), the defaults will get injected instead. 

- [x] If I create anything with an already existing module, it exits as soon as I've named the module. I haven't figured out the cause of this one yet.
Ah, that might explain why I hit some _really weird_ issues when trying to call `buildSomething()` after the config was built.