Use AutoPlugins for default project settings.

Fixes #1148

This is a rather large change that does the following things:

1. Improves the fine-grained control over how settings get ordered with `AddSettings` during project Load.  This allows us to move project settings after AutoPlugins.
2. Rename `Nature` to `RootPlugin` and drop all notion of `Nature`
3. Split Defaults.scala into three `AutoPlugin`s.
4. Update existing documentation to take into account `AutoPlugin`s


Review by @harrah @havocp @eed3si9n and/or @cunei 

Note: This does not include the AutoPlugin specific docs, just the work to "finalize" the code aspects of them.