Rewritten the macro api.
Improved the backend epoch mechanism.
Renamed default logger -> root logger.
Minors.