feat(transpiler): handle named params
chore(build): execute `pub get` only if a pubspec.yaml changed and run `dart analyzer` on all dart files

`pub get` is now only executed when the `pubspec.yaml` in the `modules`
folder is different than the `pubspec.yaml` in the `build/dart` folder.

Generates the file `build/dart/_analyzer.dart` that imports all modules
to run `dart analyzer` against all of them. The build will fail whenever
there are errors, warnings or hints in `dart analyzer`.

Changes the sources so that `dart analyzer` does not report any
error, warning or hint.

Closes #40
design: added selector interface
feat(transpiler): constructor and typed field semantics

fixes #11 (constructor and typed field semantics)
fixes #42 (Should we infer class property types from ctor args ?)
fixes #17 (number (js) should map to num (dart))

Closes #45
chore: remove hello test
fix: Enabled annotation support for Dart
feat(injector): initial implementaion of dynamic injector
refactor(injector): rename humanize into stringify
refactor(facade): instantiate a fixed length array
refactor(injector): change reflector to collect the resolving path only when an error occurs
refactor(injector): use @CONST to create the Inject annotation
feat(injector): implement async dependencies
feat(injector): handle construction errors

- Detect cyclic deps
- Handle initialization errors
feat(injector): handle in-progress async construction
feat(injector): implement InjectLazy
feat(injector): handle async cyclic dependencies
feat(injector): change injector to show the full path when error happens in a constructor (async)
refactor(injector): remove DIError
feat(facade): add bool type
refactor(injector): add bool and int annotations