mainly tests and refactoring

*moved some magic numbers to config
*refactored equipment
*modified json::has_field to return an optional<cref>
*fixed mob generation to not place a mob on the player during level
generation
*more tests for items / equipment