I Can't Believe It's Not Roslyn -- Using Nemerle Macros to extend the C# Language