more refactor
resilience: if tables.json isn't reachable or doesn't parse, imgAreaSelects will still be created
some extra rectangle changes
pretty