Improve an error message relating to balance assertions
Add ninja as a build dependency
Replace sha1.cc with boost::uuid::details::sha1

sha1.cc is not redistributable by Debian because the license doesn't
permit redistribution of modified versions.

This isn't ideal since the ::details namespace is subject to change,
but it avoids adding a dependency to ledger.
Require the use of C++11