Bug 1065279 - [settings] refactor Hotspot panel with AMD pattern

This is a little bit tricky. As `modules/mvvm/observable` is also required by other modules, the code will be removed and merged to the module that uses it in the build process unless we exclude it by adding the path in the array:
```
exclude: ['main', 'modules/mvvm/observable']
```