moving toward creating some initial components with protocol