Improved handling of opts.paths

* opts.paths are always preferred over bowerrc/defaults
* Introduced opts.paths.cwd; opts.paths='str' is shorthand for opts.paths.cwd='str'
* Using cwd from bowerrc only if present
* Using directory from bowerrc only if present (fixed a bug where missing directory was causing error to be thrown)
* Delayed resolution of opts.paths.bowerJson and opts.paths.bowerDirectory after opts.paths.cwd is resolved. Unfortunately bowerrc needs to be resolved before cwd, since it can specify both cwd and directory. This is only to keep backward compatibility with opts.paths='str'
* Appending path.sep to opts.base like gulp.src with globs would