added solving and more tests