Updated Observer pattern, plus fixed cookie demo, and some cleaning up