Pull content refactor

Don't merge until this is actually ready, just running an aggregate diff.