You won't need Exchange, so that should help simplify the
environment. You won't need to inspect packets either. You will need
to inspect assembly. Are you familiar with MAPI internals at all? Or
IDA Pro and Assembly Language?

I really only ever used a CalDAV server for testing. We can use
Bedework ( http://bedework.com/ ) for this.

If you plan on working on migrating the datalayer to C#, then you
won't need a server at all. All the testing can be done locally.

If you plan to work on shared folders support then you will need IDA
Pro and lots, and lots of patience J

Unfortunately, there isn't much documentation. But I will be happy to
answer any questions you may have.

The role of the datalayer is to save MAPI data. This is what saves
appointments and messages to the disk. It is only used by a very
small number of interfaces. Actually IMAPIProp
(http://otlkcon.svn.sourceforge.net/viewvc/otlkcon/trunk/otlkcon/opncon/O_IProp.cpp?view=markup) and IMAPITable being the biggest consumers. Currently, it uses an
SQLite database. We should move this to SQL Server Compact for better
locking, application transaction model and more support for platform
database abstraction features.

Again, feel free to ask as many questions as you'd like. I will try
to clarify things as best as I can.