- configuration is now called preferences
- introduce a new preferences package
- add a function to migrate from viperconfig to preferences package
- change code to use new preferences package
ADDITIONAL NOTES: the preferences package is based on the functional options idiom:
https://github.com/tmrts/go-patterns/blob/master/idiom/functional-options.md