Aaron Schulz Contribution: Refactor CompaTables

* Use ESI
* Split out Compatables.class.php file
* Added extension config file
* Added $wgCompatablesJsonFileUrl and various cleanups
* Set TTL in Cache-Control header for special page
* Fixes for older PHP versions
* "<!DOCTYPE html><html>" was showing up in the final html