Consolidate core functional stuff into a single core.rb, rather than a
bunch of others that depends on each other.