Index: client/Client/Client.vcxproj
===================================================================
--- client/Client/Client.vcxproj	(revision aee34b9d5bd16b8502a9f91c9a461654fb8d0e1c)
+++ client/Client/Client.vcxproj	(revision d87708d60d0d5ff5a1442042899969dbe0daf09a)
@@ -62,7 +62,9 @@
   </ItemDefinitionGroup>
   <ItemGroup>
+    <ClCompile Include="..\..\common\message.cpp" />
     <ClCompile Include="main.cpp" />
   </ItemGroup>
   <ItemGroup>
+    <ClInclude Include="..\..\common\compiler.h" />
     <ClInclude Include="..\..\common\message.h" />
   </ItemGroup>
Index: client/Client/Client.vcxproj.filters
===================================================================
--- client/Client/Client.vcxproj.filters	(revision aee34b9d5bd16b8502a9f91c9a461654fb8d0e1c)
+++ client/Client/Client.vcxproj.filters	(revision d87708d60d0d5ff5a1442042899969dbe0daf09a)
@@ -22,4 +22,7 @@
       <Filter>Source Files</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\common\message.cpp">
+      <Filter>Source Files\common</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
@@ -27,4 +30,7 @@
       <Filter>Source Files\common</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\common\compiler.h">
+      <Filter>Source Files\common</Filter>
+    </ClInclude>
   </ItemGroup>
 </Project>
Index: client/Client/main.cpp
===================================================================
--- client/Client/main.cpp	(revision aee34b9d5bd16b8502a9f91c9a461654fb8d0e1c)
+++ client/Client/main.cpp	(revision d87708d60d0d5ff5a1442042899969dbe0daf09a)
@@ -1,11 +1,14 @@
-/* UDP client in the internet domain */
+#include "../../common/compiler.h"
+
 #include <sys/types.h>
 
-#include <winsock2.h>
-#include <WS2tcpip.h>
+#ifdef WINDOWS
+	#include <winsock2.h>
+	#include <WS2tcpip.h>
+#endif
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <string.h>
+#include <string>
 
 #include <iostream>
@@ -15,19 +18,11 @@
 #include "../../common/message.h"
 
-#pragma comment(lib, "ws2_32.lib")
+#ifdef WINDOWS
+	#pragma comment(lib, "ws2_32.lib")
+#endif
 
 using namespace std;
 
 void error(const char *);
-
-int boost_main()
-{
-    using namespace boost::lambda;
-    typedef istream_iterator<int> in;
-
-    for_each(in(cin), in(), cout << (_1 * 3) << " " );
-
-	return 0;
-}
 
 int main(int argc, char *argv[])
@@ -37,4 +32,5 @@
 	struct hostent *hp;
 	char buffer[256];
+	NETWORK_MSG msgTo, msgFrom;
 
 	if (argc != 3) {
@@ -68,20 +64,17 @@
 	server.sin_port = htons(atoi(argv[2]));
 	cout << "Please enter the message: ";
-	memset(buffer, 0, 256);
-	fgets(buffer,255,stdin);
+	cin.getline(msgTo.buffer, 256);
+	socklen_t socklen = sizeof(server);
 
-	socklen_t fromlen = sizeof(server);
+	n=sendMessage(&msgTo, sock, &server);
+	if (n < 0)
+		error("sendMessage");
 
-	n=sendto(sock,buffer, strlen(buffer), 0, (const struct sockaddr *)&server, fromlen);
+	n = receiveMessage(&msgFrom, sock, &from);
 	if (n < 0)
-		error("Sendto");
-
-	n = recvfrom(sock, buffer, 256, 0, (struct sockaddr *)&from, &fromlen);
-	if (n < 0)
-		error("recvfrom");
+		error("receiveMessage");
 	
-	buffer[n] = '\0';
 	cout << "Got an ack: " << endl;
-	cout << buffer << endl;
+	cout << msgFrom.buffer << endl;
 
 	closesocket(sock);
@@ -92,16 +85,5 @@
 }
 
-/*
-int sendMessage(short type, string contents, int sock, struct sockaddr_in *dest)
-{
-	NETWORK_MSG msg;
-
-	msg.type = type;
-	strcpy(msg.buffer, contents.c_str());
-
-	return sendto(sock, (char*)&msg, sizeof(NETWORK_MSG), 0, (struct sockaddr *)dest, sizeof(dest));
-}
-*/
-
+// need to make a function like this that works on windows
 void error(const char *msg)
 {
