conformal/btcwallet — pull request #153 by davecgh (2014-11-10 02:43:45+00:00)
Title: Convert to new walletdb package and format.

**NOTE: This pull request requires #152.**

This pull request converts the waddrmgr package to use the new walletdb package semantics.

Since waddrmgr no longer controls the database, it is unable to make a copy of the database and return it as the old ExportWatchingOnly function required. As a result, it has been renamed to ConvertToWatchingOnly and it now modifies the namespace provided to it. The idea is that the caller which does control the database can now make a copy of the database, get the waddrmgr namespace in the database copy and invoke the new function to modify it. This also works well with other packages that might also need to make modifications for watching-only mode.

In addition, the following changes are made:

- All places that worked with database paths now work with the walletdb.Namespace interface
- The managerTx code is replaced to use the walletdb.Tx interface
- The code which checks if the manager already exists is updated to work with the walletdb.Namespace interface
- The LatestDbVersion constant is now LatestMgrVersion since it no longer controls the database