PR for Issue 25 to properly handle Columns named with reserved keywords
This PR expands test_reserved_keywords_as_attributes test in test_target_snowflake to verify appropriate handling of 'CURRENT_USER' and 'following' (both reserved words) as column names.
To pass the enhanced test it:
- refactors the hardcoded listing of reserved keywords allowing it to be reused in singer_target_utils
- adds 'following' to the list
- accounts for the fact that sqlalchemy's Column.name overrides upper() which was breaking reserved word matching
- adds logic to singer_target_utils to use the reserved keywords list to set the 'quote' parameter on Column during DDL generation
- Also makes a few modifications to README and config_generator.py to help future contributors with issues I encountered getting started with this contribution