refactor(demos): use angular modules

Closes #1912
fix(dropdown): close after selecting an item

Fixes #2130
Closes #2140
fix(modal): allow modal.{dismiss,close} to be called again

$modalStack.openWindows.get(modalInstance) is undefined after the first dismiss and throws:
-   TypeError: Cannot read property 'value' of undefined

Closes #1972
refactor(modal): remove unused variables
chore(build): improve Karma reporting
feat(modal): add backdropClass option, similar to windowClass option

Really, identical to windowClass, but for backdrop.

Fixes #1179
Closes #1862
test(collapse): DOM elements cleanup
test(tooltip): DOM elements cleanup
test(datepicker): DOM elements cleanup