Optional file quoting, async exec of rpmbuild, and package settings preceding default options.

File paths are being quoted twice (e.g. ""/path/abc"") in the generated
spec file.  This occurs in the spec writing method as well as in the
task body while files are being added to the `fileBasket`.  Quoting of
file paths was removed from the spec writing method to avoid the
doubling.  An option `quoteFilePaths` was introduced with a default
state of `true`.  This options allows for paths to be completely
unquoted in the resulting spec file.

Often, the task will complete before the spawned child which runs the
`rpmbuild` command.  As such, the portions of the task that depend on
the `grunt.utils.spawn` callback were never executed.  The task was made
to be asynchronous so that the entire task is executed irrespective of
the timing between the task and the child.

Tested on Mac OS 10.9.4, node 0.10.31, and Grunt 0.4.5

Settings in the package definition file, `package.json`, are now
injected into the default options.  This allows for things like `name`
and `version` to be tracked in a single place, rather than in both the
package definition and the gruntfile configuring the rpm packaging.  The
order of precedence is:

    gruntInit > package.json > defaults