eval-when-compile permits compile-time definitions that can be used from macros

Fixes #186