Improved generator functionality, using active_support/inflections to have nice names