Adding support for multiple macro arities

Changes:
- 'defmacro' can now take multiple arities, just like 'fn'