Merge pull request #137 from MonsieurNicolas/goSQL

don't perform actual work on open ledger
Merge branch 'goSQL' of https://github.com/stellar/stellard into goSQL
avoid disputes:
tweaks to the proposal set to remove (silently) failed tx from the set
also don't apply failed tx to the forward set as the logic already deals with a limited number of dependencies between transactions
bogus assert: account merge allows for a given tx to be applied several times over the course of history (but to a different ledger)
fixed Windows project file (broken by merge)
Update Roadmap.md

Updated with new dates.
Update Roadmap.md

Updated title.
Update Roadmap.md

Updated fix issues link and label.
SHAMap performance improvements (RIPD-434)

This reworks the way SHAMaps are stored, flushed, backed, and
traversed. Rather than storing the linkages in the SHAMap itself,
that information is now stored in the nodes. This makes
snapshotting much cheaper and also allows traverse work done on
behalf of one SHAMap to be used by other SHAMaps that share inner
nodes with that SHAMap.

When a SHAMap is modified, nodes are modified all the way up to the
root. This means that the modified nodes in a SHAMap can easily be
traversed for flushing. So they don't need to be separately tracked.

Summary
* Remove mTNByID
* Remove mDirtyNodes
* Much faster traverses
* Much Faster snapshots
* New algorithm for flushing
* New vistNodes/visitLeaves
* Avoid I/O if a map is unbacked
Merge pull request #145 from graydon/ripple-labs-shamap-refactor

SHAMap performance improvements (RIPD-434)

Reviewed-by: jedmccaleb
Update BuildInfo.cpp
Merge branch 'master' into goSQL

Conflicts:
	src/ripple_app/consensus/LedgerConsensus.cpp