18 use activesupport concerns

fixes #18