use layers, allow passing parameters to gadfly, and plot holes