Extractions

There are two extractions from `Site` in this pull request:

- Extract the reading of layouts
- Extract the filtering of entities.

Let me know if this needs more TomDoc and what not.