adding basic solver setup and updating toString