Found a way of determining mixed signs in groupPatterns.
Refactoring to use MoneyTestBase which I moved. Don't want to use new Money(long) in most tests now, use gbp(long), usd(long) and yen(long) functions.
Can now FinancialTransactions by string.
FinancialTreeNode now uses SubTransactions.
SubTransactionList added with own tests.
More indirect usages of new Money(long) and Money.getValue() removed.
Very few tests now use the FinancialTransaction builders value(long) method.
Completely removed value(long) from builder.