The greeting event will not be seen by a client if the first data event on the stream arrives before the client starts listening.
This bug is easily reproducible (for example, set a timeout before listening to 'greeting'). Patch includes testcase.
Fix data/greeting race condition (w/testcase).
Sorry for sitting on this so long! Merged in 2.2.1.