Implement case macro
Reimplement try as a macro wrapping primitive try*. Fixes #17.