So I created a `bower-meta` Grunt task which uses `bower` to load the metadata for all the Bower dependencies and add that data to Grunt's config object. But it makes the build take twice as long, 0.5sec to 1sec :(

```javascript
grunt.registerTask('bower-meta', 'Make bower.json data available to Grunt.', function () {
    var bower = require('bower'),
        done  = this.async();

    bower.commands.list(null, {offline: true}).on('end', function (results) {
        var dependencies = results.dependencies;

        Object.keys(dependencies).forEach(function (name) {
            var dependency  = dependencies[name],
                meta        = dependency.pkgMeta,
                config      = {},
                bowerConfig = grunt.config.getRaw('bower') || {};

            if (!meta) {
                grunt.fatal('Bower dependency ' + name + ' not installed.');
            }

            config[name] = meta;

            // Merge dependency into `bower` config.
            grunt.config('bower', grunt.util._.merge(bowerConfig, config));
        });

        grunt.log.writeln('Loaded metadata for Bower packages.');
        done();
    });
});
```