Refactored #check unit tests

The cases are now stored outside the test such as it is easy to add some test cases to both #check with and without the "throws" flag.
Final unit tests for #check with the throws flag

 - Added expected error message and path for failing cases
 - Added Lodash as dependency to have access to the isEqual helper inside an assert.throws
 - Refactored #checks (with throws flag set to true) unit tests to make them test messages and paths
 - Fixed paths in objects from typology