Add preferences window

Create extension preferences widget for general settings.
Add GUI refresh interval setting.
Add enable/disable setting for all indicators.
Refactor code in extension, factory, view units.