Fix: Macros should be case insensitive

This patch fixes two problems with macro resolving:

* When asking for a custom variable it should be
  Case insensensitive (i.e. $_SERVICE_MACRO1 == service.__macro1)

* When calling get_all_macros() all macronames are returned in
  uppercase.

A summary of what this patch does:
* New method: ObjectDefinition._get_custom_variable_macro() which is case-insensitive
* Refactor all fetching of custom variable macros to use this new method
* Change get_all_macros() so all macro names are in uppercase
* Refactor tests of get_all_macros() to reflect the new uppercase change
* Update tests that were using custom variables to always use the uppercase form of macros.