Major header movement

- Used IWYU to reorganize headers
- Dropped PHP support
- Updated tests