Break up into interfaces. Fill out different interfaces and check design
for plugability.