Uses MVVM Pattern (Model, View, ViewModel) by using the new architecture components. This moves us away from using services and loader managers. A key feature here is observing LiveData for changes, which makes it easier to keep track of data that is saved locally as well as refreshed from the network.
Migrates to the new Room Persistence Library for database access instead of Cursor Loaders. Also increased the DB version to 8. This change makes some INTEGER values used for storing lat/longs REAL.
Sets up foundation for unit testing. Pull request includes some view model tests for Border Waits and Ferries.
Android architecture components Implements some patterns use in the GitHub repo demo project.
New architecture
MVVM
Room architecture