Added tests to make sure the classes implements the right interfaces.
Fixed dependencies and jsonElement in tests.