fix(Query): add missing Query.having() method
style(utils): make number setter throw more informative errors
feat(utils): in utils.moduleMap(dir) skip index.js
feat(FieldTypeError): generate another error message if field name is missing
feat(Query/having): add type validation
feat(Query/having): put repeating code into having/index.js and use it
feat(Query/having): add validation for 'not' filter
style(tests): cosmetics
feat(Query/having): add test suite