adding initial framework for supporting multi plot types