Split meta endpoints into separate class

This is one half of #273.