move macro sanity check into separate function

This moves out from macro_translator the macro/param length sanity check
into a function called check_macro_sanity.
Merge pull request #184 from kanzure/preprocessor-macro-sanity-check-function

Move macro sanity check into a separate function.