Added DLL_EXPORT macro support.

This causes defines to be set for each project:
  <name>_SHARED
  <name>_EXPORT

And an accompanying dllexport.h to define macros:
  DLL_EXPORT(name)
  DLL_LOCAL(name)