remove publish_foo functions
add metadata to display functions

also consolidate a bunch of duplicate code