sketching out more interface options
supporting passing in a plan object
adding support for parsing patches argument
adding support for parsing patches argument
adding errors for bad setup