Refactor: moved Bower package fetching code from BowerManager to _BowerFetcher
Re-add transitive Bower dependencies v.1.0 before proceding to v.2.0
Merge remote-tracking branch 'upstream/master' into bower-support-transitive-deps-2
Transitive Bower dependency downloading v.2.0

Downloads in 2 stages:
1) Recursively XHRs all bower.json's starting at the project's top bower.json. Record dependencies for every one.
2) Downloads the resulting set of dependencies in parallel.
Better error handling
Review comments: improve error handling in JSON/Yaml parsing
Fine-tuned a progress massage
Review comments: throw i.o. assert when 'bower install' requested for non-Bower project
Review comments: numerous improvements in error handling
Merge remote-tracking branch 'upstream/master' into bower-support-transitive-deps-2

Conflicts:
	ide/app/spark.dart
Merge pull request #1523 from ussuri/bower-support-transitive-deps-2

Bower: fetch transitive dependencies v.2.0