diff --git a/CMakeLists.txt b/CMakeLists.txt
index d84f7a90b239604a4fc01d306dee96f772b3b38d..36c2b8bfa55356ac88178bc4498a7e7991588996 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -157,7 +157,7 @@ add_executable(URLTEST
 
         )
 
-add_executable(search-engine search.cpp query/Query.cpp)
+add_executable(search-engine search.cpp query/Searcher.cpp)
 
 add_executable(ISRWord-tests
         util/util.cpp
diff --git a/query/Query.h b/query/Query.h
deleted file mode 100644
index 92affcc43a055c794f3708b16a9a098375fbc65d..0000000000000000000000000000000000000000
--- a/query/Query.h
+++ /dev/null
@@ -1,25 +0,0 @@
-//
-// Created by Jake Close on 3/7/18.
-//
-
-#pragma once
-
-using namespace std;
-
-class QueryParser
-	{
-
-public:
-	QueryParser ( const char *query_in ) : CompleteQuery( query_in )
-		{ };
-
-	void search ( );
-
-	void printResults ( );
-
-private:
-	const char *CompleteQuery;
-
-	};
-
-
diff --git a/query/Ranker/Ranker.cpp b/query/Ranker/Ranker.cpp
index a636c05e554b36bff2b89e3668705b7409cac94e..4a35a524ba96f3ebdb7b402d3c131f02984d598c 100644
--- a/query/Ranker/Ranker.cpp
+++ b/query/Ranker/Ranker.cpp
@@ -32,7 +32,6 @@ vector< string > Ranker::rank ( )
 	vector<DocumentEnding> docEnds;
 	set<string> urls;
 
-
 	for( auto queryWord = inputQuery.begin(); queryWord < inputQuery.end(); ++queryWord)
 		{
 		while ( queryWord->getCurrentLocation ( ) != MAX_Location )
diff --git a/query/Query.cpp b/query/Searcher.cpp
similarity index 63%
rename from query/Query.cpp
rename to query/Searcher.cpp
index 8058931a4f54925396d2efd93440bfcaca5d4abb..fef73dfae3f66802f3359364748a15e050e49f59 100644
--- a/query/Query.cpp
+++ b/query/Searcher.cpp
@@ -2,7 +2,7 @@
 // Created by Jake Close on 3/7/18.
 //
 
-#include "Query.h"
+#include "Searcher.h"
 #include <iostream>
 
 using namespace std;
@@ -13,19 +13,30 @@ using namespace std;
  *
  */
 
-void QueryParser::search ( )
+void Searcher::search ( )
 	{
 
-	if ( strcmp( CompleteQuery, "-quit" ) == 0 )
+	if (*CompleteQuery == "-quit" ||*CompleteQuery == "-q" )
 		{
 		cout << "Thank you for using C++lue search engine" << endl;
 		exit( 0 );
 		}
-	else if ( strcmp( CompleteQuery, "-help" ) == 0 )
+	else if ( *CompleteQuery == "-help")
 		{
 		cout << "Manual" << endl;
 		return;
 		}
+	else
+		{
+		queryParser.parse(*CompleteQuery);
+		container->compile( queryParser );
+		container->solve( );
+
+
+
+
+		}
+
 
 
 	return;
diff --git a/query/Searcher.h b/query/Searcher.h
new file mode 100644
index 0000000000000000000000000000000000000000..97b87e77fce6ec372784148bb8bfae2298335fdc
--- /dev/null
+++ b/query/Searcher.h
@@ -0,0 +1,30 @@
+//
+// Created by Jake Close on 3/7/18.
+//
+
+#include "/query/queryLanguage/QueryParser.h"
+#include "/constraintSolver/ISRContainer.h"
+#pragma once
+
+using namespace std;
+
+class Searcher
+	{
+
+public:
+	Searcher ( string *query_in ) : CompleteQuery( query_in )
+		{ };
+
+	void search ( );
+
+	void printResults ( );
+
+private:
+	string *CompleteQuery;
+	QueryParser queryParser;
+	ISRContainer* container;
+
+
+	};
+
+
diff --git a/search.cpp b/search.cpp
index 7225e1ab9b2e126c64132c48adeed997ecc6cbd1..59694619d74d6d683330e320af7d2cc32a4d8b8b 100644
--- a/search.cpp
+++ b/search.cpp
@@ -5,7 +5,7 @@
 #include <iostream>
 #include <stdlib.h>
 #include <unistd.h>
-#include "query/Query.h"
+#include "query/Searcher.h"
 
 
 using namespace std;