Revert "Some work on simplifying our plugin interfaces (#341)."

This reverts commit a4ef1cef9933b08d5c613cf671f507a8ba929c52.