Updates the platform shims in dev/manual_tests so that Windows and Linux can be built. I had to update the Windows shims, because I was unable to build a Windows app there.
Also updates the analyze.dart script to report all license issues simultaneously instead of just dying after the first failure.
The only substantive code changes are in dev/bots/analyze.dart and dev/bots/test/analyze_test.dart
This consolidates all of the non-template .gitignore rules into the top level .gitignore, to ignore common things more broadly, with less maintenance needed for the .gitignore files. Does not touch the templates, so that they still produce needed .gitignores as part of flutter create.