Feature/refactor versions

The previous 'is_latest_version' and 'version' scheme is replaced with the idea that IndicatorJobs have IDs and indicators are associated with identifiable calculation jobs.

'is_latest' is equivalent to the highest job id that has a 'complete' status.
Since you're falling through anyway, I would split this up between this line and the next two, and assign the results of the isEmpty and findWhere to local vars before a second if block. Would be much easier to read.