new grunt file for 0.4~, various bug fixes, changed Precook to initailised object rather than global singleton