refactor interfaces to make districts more modular