Revert "c.name.toUpperFirst() not passable as macro argument (appears as empty string!?)"

This reverts commit c5e2bff120576cd82da92055b3907b9fabbb2441.
Revert "Extension method style syntax doesn't work."

This reverts commit a6161b82addecf643b1bf7936d49ddd4a291099f.
Revert "Implement macros using 'extension method' style."

This reverts commit 9f6b6b751ca643dae14993ba46fdacc140d09f38.