adding a new constructor to Variable and other small refactorings
small refactorings, many refactoring QuerySolution to just Solution