A quick correction on my earlier BAM posting, there are actually four EventStreams in BizTalk Server 2006, there is the MessagingEventStream which operates in the same way as the OrchestrationEventStream in that it's transactionally consistent with the pipeline execution "transaction" and should be used within a custom pipeline.

Thanks to Keith Lim for spotting my mistake, who by the way has a great BAM focused blog which is great to see!