Indicator refactor + fixes

This PR contains the initial indicator refactor plus several fixes to stabilize the app. There are still some issues such as missing indicator geometries, missing tests, and some incorrect indicator results, but for the most part this brings the app into a working state.