test(controllerTrainer): expand asynchronous tests
feat(sampleApp): add to sample demonstration application

The sample application now includes examples of common violations of best
practices that will be caught by controllerTrainer as well as Angular implementations
that will avoid the controllerTrainer errors. There is still a known error in the
correct Angular implementation of an asynchronous call. It throws an error but should not.

Closes #19