move protocol docs to a psuedo class