everything compiles, but tests segfault
fixed segfault issue. fiddled with includes and forward declarations
removed EM macro and simplified recipe library and changed it to recipe namespace