fixes #7066 - add back $login interpolation for LDAP service account usernames

In cases where an LDAP connection is required outside of the context of user
authentication (e.g. validation of external user group name), an error is
thrown.  Users are recommended to use dedicated service accounts for this
new feature.
refs #7066 - fix syntax error in expression
fixes #7121 - move smart proxy action buttons to helper
Fixes #3809 - Add rubocop to check Ruby code
DO NOT MERGE: fixes #3848: Matcher value for smart variables against array
fixes #3309: Support deep merging of hash structures in smart class parameters