Support for naming strategies (snake_case)

Implementation for #393