use ActiveSupport::HashWithIndifferentAccess if available

similar to https://github.com/binarylogic/settingslogic/pull/52, but preserves 'classic' hash if method with_indifferent_access not available