diff --git a/modules/ripple_basics/ripple_basics.cpp b/modules/ripple_basics/ripple_basics.cpp
index b98fa2e547..6a2d8445ae 100644
--- a/modules/ripple_basics/ripple_basics.cpp
+++ b/modules/ripple_basics/ripple_basics.cpp
@@ -24,23 +24,6 @@
#include "ripple_basics.h"
-// VFALCO: TODO, clean this up
-// This is here for Amount*.cpp
-#include "src/cpp/ripple/bignum.h"
-#if (ULONG_MAX > UINT_MAX)
-#define BN_add_word64(bn, word) BN_add_word(bn, word)
-#define BN_sub_word64(bn, word) BN_sub_word(bn, word)
-#define BN_mul_word64(bn, word) BN_mul_word(bn, word)
-#define BN_div_word64(bn, word) BN_div_word(bn, word)
-#else
-#include "src/cpp/ripple/BigNum64.h"
-#endif
-
-static const uint64 tenTo14 = 100000000000000ull;
-static const uint64 tenTo14m1 = tenTo14 - 1;
-static const uint64 tenTo17 = tenTo14 * 1000;
-static const uint64 tenTo17m1 = tenTo17 - 1;
-
// VFALCO: TODO, fix these warnings!
#ifdef _MSC_VER
//#pragma warning (push) // Causes spurious C4503 "decorated name exceeds maximum length"
@@ -48,34 +31,6 @@ static const uint64 tenTo17m1 = tenTo17 - 1;
#pragma warning (disable: 4244) // conversion, possible loss of data
#endif
-//VFALCO: TODO, figure out how to include this
-//#include "src/cpp/ripple.pb.cc"
-
-#include "src/cpp/ripple/Log.cpp"
-
-#include "src/cpp/ripple/Amount.cpp"
-#include "src/cpp/ripple/AmountRound.cpp"
-#include "src/cpp/ripple/BitcoinUtil.cpp" // no log
-#include "src/cpp/ripple/DeterministicKeys.cpp"
-#include "src/cpp/ripple/ECIES.cpp" // no log
-#include "src/cpp/ripple/FieldNames.cpp" // no log
-#include "src/cpp/ripple/HashedObject.cpp"
-#include "src/cpp/ripple/PackedMessage.cpp" // no log
-#include "src/cpp/ripple/ParameterTable.cpp" // no log
-#include "src/cpp/ripple/ParseSection.cpp"
-#include "src/cpp/ripple/PlatRand.cpp" // no log
-#include "src/cpp/ripple/ProofOfWork.cpp"
-#include "src/cpp/ripple/RangeSet.cpp"
-#include "src/cpp/ripple/RippleAddress.cpp"
-#include "src/cpp/ripple/rfc1751.cpp" // no log
-#include "src/cpp/ripple/SHAMap.cpp"
-#include "src/cpp/ripple/SHAMapDiff.cpp" // no log
-#include "src/cpp/ripple/SHAMapNodes.cpp" // no log
-#include "src/cpp/ripple/SHAMapSync.cpp"
-#include "src/cpp/ripple/utils.cpp" // no log
-
-#include "ripple.pb.cc"
-
#ifdef _MSC_VER
//#pragma warning (pop)
#endif
diff --git a/modules/ripple_mess/ripple_mess.cpp b/modules/ripple_mess/ripple_mess.cpp
new file mode 100644
index 0000000000..74cfee8aeb
--- /dev/null
+++ b/modules/ripple_mess/ripple_mess.cpp
@@ -0,0 +1,78 @@
+//------------------------------------------------------------------------------
+/*
+ Copyright (c) 2011-2013, OpenCoin, Inc.
+
+ Permission to use, copy, modify, and/or distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+*/
+//==============================================================================
+
+/** Add this to get the @ref ripple_mess module.
+
+ @file ripple_mess.cpp
+ @ingroup ripple_mess
+*/
+
+#include "ripple_mess.h"
+
+// VFALCO: TODO, clean this up
+// This is here for Amount*.cpp
+#include "src/cpp/ripple/bignum.h"
+#if (ULONG_MAX > UINT_MAX)
+#define BN_add_word64(bn, word) BN_add_word(bn, word)
+#define BN_sub_word64(bn, word) BN_sub_word(bn, word)
+#define BN_mul_word64(bn, word) BN_mul_word(bn, word)
+#define BN_div_word64(bn, word) BN_div_word(bn, word)
+#else
+#include "src/cpp/ripple/BigNum64.h"
+#endif
+
+static const uint64 tenTo14 = 100000000000000ull;
+static const uint64 tenTo14m1 = tenTo14 - 1;
+static const uint64 tenTo17 = tenTo14 * 1000;
+static const uint64 tenTo17m1 = tenTo17 - 1;
+
+// VFALCO: TODO, fix these warnings!
+#ifdef _MSC_VER
+//#pragma warning (push) // Causes spurious C4503 "decorated name exceeds maximum length"
+#pragma warning (disable: 4018) // signed/unsigned mismatch
+#pragma warning (disable: 4244) // conversion, possible loss of data
+#endif
+
+#include "src/cpp/ripple/Log.cpp"
+
+#include "src/cpp/ripple/Amount.cpp"
+#include "src/cpp/ripple/AmountRound.cpp"
+#include "src/cpp/ripple/BitcoinUtil.cpp" // no log
+#include "src/cpp/ripple/DeterministicKeys.cpp"
+#include "src/cpp/ripple/ECIES.cpp" // no log
+#include "src/cpp/ripple/FieldNames.cpp" // no log
+#include "src/cpp/ripple/HashedObject.cpp"
+#include "src/cpp/ripple/PackedMessage.cpp" // no log
+#include "src/cpp/ripple/ParameterTable.cpp" // no log
+#include "src/cpp/ripple/ParseSection.cpp"
+#include "src/cpp/ripple/PlatRand.cpp" // no log
+#include "src/cpp/ripple/ProofOfWork.cpp"
+#include "src/cpp/ripple/RangeSet.cpp"
+#include "src/cpp/ripple/RippleAddress.cpp"
+#include "src/cpp/ripple/rfc1751.cpp" // no log
+#include "src/cpp/ripple/SHAMap.cpp"
+#include "src/cpp/ripple/SHAMapDiff.cpp" // no log
+#include "src/cpp/ripple/SHAMapNodes.cpp" // no log
+#include "src/cpp/ripple/SHAMapSync.cpp"
+#include "src/cpp/ripple/utils.cpp" // no log
+
+#include "ripple.pb.cc"
+
+#ifdef _MSC_VER
+//#pragma warning (pop)
+#endif
diff --git a/modules/ripple_mess/ripple_mess.h b/modules/ripple_mess/ripple_mess.h
new file mode 100644
index 0000000000..f46a5be331
--- /dev/null
+++ b/modules/ripple_mess/ripple_mess.h
@@ -0,0 +1,37 @@
+//------------------------------------------------------------------------------
+/*
+ Copyright (c) 2011-2013, OpenCoin, Inc.
+
+ Permission to use, copy, modify, and/or distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+*/
+//==============================================================================
+
+/** Include this to get the @ref ripple_mess module.
+
+ @file ripple_mess.h
+ @ingroup ripple_mess
+*/
+
+/** Messy classes.
+
+ Stuff I haven't gotten to cleaning up yet.
+
+ @defgroup ripple_mess
+*/
+
+#ifndef RIPPLE_MESS_H
+#define RIPPLE_MESS_H
+
+#include "../ripple_basics/ripple_basics.h"
+
+#endif
diff --git a/newcoin.vcxproj b/newcoin.vcxproj
index 0204de5924..72ea344526 100644
--- a/newcoin.vcxproj
+++ b/newcoin.vcxproj
@@ -178,6 +178,7 @@
+
true
@@ -1167,6 +1168,7 @@
+
diff --git a/newcoin.vcxproj.filters b/newcoin.vcxproj.filters
index ac62ebd553..87e0f5e023 100644
--- a/newcoin.vcxproj.filters
+++ b/newcoin.vcxproj.filters
@@ -106,20 +106,23 @@
{71aefc54-1459-47a5-af76-995f121d498a}
-
- {3cd9631b-129b-4d0e-af70-d879e6f31a88}
+
+ {becffa9b-61f7-42d4-815a-1ec822cad0e7}
-
- {1b463564-35d9-43d1-b3a0-21b344a3a1c7}
+
+ {683c494b-1175-49ac-9714-65640ba50bf5}
-
- {eb0c6bda-cf68-4334-a8c3-8d39202852a0}
-
-
+
{505d1e20-ff6a-446b-8ce0-962e11b78820}
-
- {683c494b-1175-49ac-9714-65640ba50bf5}
+
+ {eb0c6bda-cf68-4334-a8c3-8d39202852a0}
+
+
+ {1b463564-35d9-43d1-b3a0-21b344a3a1c7}
+
+
+ {96cbc9ff-0118-4844-bb4c-05aef58a60b5}
@@ -481,52 +484,52 @@
1. Modules\ripple_ledger\serialization
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
1. Modules\ripple_basics
- 1. Modules\ripple_basics\%28mess%29\diagnostic
+ 1. Modules\ripple_mess\diagnostic
1. Modules\ripple_ledger
@@ -694,7 +697,7 @@
1. Modules\ripple_net\overlay
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
1. Modules\ripple_ledger\transactions
@@ -706,19 +709,19 @@
1. Modules\ripple_ledger\processing
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
1. Modules\ripple_main\core
@@ -730,7 +733,10 @@
1. Modules\ripple_ledger\processing
- 1. Modules\ripple_basics\%28mess%29\protobuf
+ 1. Modules\ripple_mess\protobuf
+
+
+ 1. Modules\ripple_mess
@@ -1098,52 +1104,52 @@
1. Modules\ripple_ledger\serialization
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
1. Modules\ripple_basics
- 1. Modules\ripple_basics\%28mess%29\diagnostic
+ 1. Modules\ripple_mess\diagnostic
1. Modules\ripple_ledger
@@ -1308,7 +1314,7 @@
1. Modules\ripple_net\service
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
1. Modules\ripple_net\overlay
@@ -1317,7 +1323,7 @@
1. Modules\ripple_net\overlay
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
1. Modules\ripple_ledger\transactions
@@ -1329,25 +1335,22 @@
1. Modules\ripple_ledger\processing
- 1. Modules\ripple_basics\%28mess%29\containers
-
-
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
- 1. Modules\ripple_basics\%28mess%29\containers
+ 1. Modules\ripple_mess\containers
1. Modules\ripple_main\core
@@ -1362,13 +1365,19 @@
1. Modules\ripple_main\core
- 1. Modules\ripple_basics\%28mess%29\protobuf
+ 1. Modules\ripple_mess\protobuf
1. Modules\ripple_basics\types
- 1. Modules\ripple_basics\%28mess%29\types
+ 1. Modules\ripple_mess\types
+
+
+ 1. Modules\ripple_mess
+
+
+ 1. Modules\ripple_basics\containers