Reads from .yo-rc.json before bower.json

First, this makes sure that at least one of the files exists. If it does, it attempts to assign the config found there to `this.cpui`, but if that config comes up empty, we give a helpful error message.
Moves default config into json file

Since `this.src` always refers to the sub-generator's templates folder, we can at least be sure that the relative path is the same for each sub-generator. This was the best way I could think to get access to that path. Also removes the .save() line since .defaults() does that for us.
Adds generator for creating configs

If no config file (.yo-rc.json) exists, you're forced into creating one
the first time that you run `yo cpui`. It allows you to override some
defaults, with an exception of separators: I just think that's more
confusing during config setup than it is helpful. It can always be
modified later on, manually.

There's also a convention I tend to use, which is instead of using the
`self` keyword, I like to name the object what it is so that the context
is immediately clear.

Conflicts:
	lib/cpui-base.js