Simplifying code. Getting rid of some warnings.
Fix (hopefully) the pre-commit hook.
Move some Area methods into the Area class.

This also includes other minor cleanup.