Huge refactor: change to using area tags