* updated util and libwallet with thiserror
* update impl crate to thiserror
* api crate converted to thiserror
* update of controller crate to thiserror
* update final bin + tests to thiserror
* update unused import
* remove failure derive
* reset import of grin to master
* update cargo lock
* update from master
* remove grin libs re-export from util crate :(
* temp local
* point code at bleeding edge grin master branch
* updated util and libwallet with thiserror
* update impl crate to thiserror
* api crate converted to thiserror
* update of controller crate to thiserror
* update final bin + tests to thiserror
* update unused import
* remove failure derive
* reset import of grin to master
* update cargo lock
* update from master
* tor bridge config and args
* migration `config_file_version=2`
* small fixes typo, comment etc..
* support: snowflake, meek_lite, obsf4 and tor proxy
* remove useless serde
* improve migrate function
* few fixes
* add bridge flags to pay and receive + few fixes
* some improvements
* make transaction field in V4 Slate optional
* add mutable/non mutable version of tx getter
* removal of mut references where not needed
* remove more muts
* update from master
* update from master
* test fixes
* rework setup code to ensure --top_level_dir flag works and all files are only output into the desired directory
* check for existence of wallet configuration file in target directory before asking recovery phrase and password
* test fixes and add test_mode flag to parse_init_args
* first attempt at adding updater thread
* rustfmt
* rustfmt
* many lifetimes made static to allow api to spawn separate thread
* add first pass at updater thread functionality
* rustfmt
* add mpsc for returning status from update functions
* rustfmt
* add stop state, ensure update is triggered by wallet functions when wallet updater is running
* rustfmt
* add update status function to owner API, V3 owner api functions
* rustfmt
* change update warning
* adding tests for new updater control functions
* documentation updates
* rustfmt
* Rename check-repair -> scan, make lock logic more granular
* rustfmt
* update owner api implementations where to allow granular locking where required
* rustfmt
* store init state on startup to determine whether full utxo scan is required for new wallets
* rustfmt
* fix for init status persist
* add start height argument to scan
* rustfmt
* udpate for beta release
* initial tor explorations
* rustfmt
* basic tor tx send working
* rustfmt
* add tor proxy info to config file
* rustfmt
* add utilities to output tor hidden service configuration files
* output tor config as part of listener startup
* rustfmt
* fully automate config and startup of tor process
* rustfmt
* remove unnecessary process kill commands from listener
* rustfmt
* assume defaults for tor sending config if section doesn't exist in grin-wallet.toml
* rustfmt
* ignore tor dev test
* update default paths output by config, compilation + confirmed working on windows
* rustfmt
* fix on osx/unix
* add timeout to tor connector, remove unwrap in client
* allow specifiying tor address without 'http://[].onion' on the command line
* fix api test
* rustfmt
* update address derivation path as per spec
* rustfmt
* move tor init to separate function
* rustfmt
* re-ignore tor dev test
* listen on tor by default if tor available
* rustfmt
* test fix
* remove explicit send via tor flag, and assume tor if address fits
* rustfmt
* allow owner api to start up without a wallet, begin to add lifecycle functions
* rustfmt
* test and typos fix
* updated with lifecycle functions
* rustfmt
* updates to allow owner api tests to be executed against local wallet proxy
* rustfmt
* fix for windows test
* add ability to pass configuration to , begin to add documentation and doctests
* add ability to pass configuration to , begin to add documentation and doctests
* doctests for lifecycle functions
* rustfmt
* ensure foreign API also has mask updated when being run along owner api, add more tests to lifecycle
* rustfmt
* documentation for lifecycle methods + init_secure_api
* rustfmt
* failing doctest
* adding initial version of init_secure_api
* rustfmt
* fix ECDH algo
* rustfmt
* trying to figure out best way of doing encryption
* refactor secure requests and responses into json-rpc responses, with base64 payload for encrypted messages
* rustfmt
* return proper errors from encrypted api, include tests covering encrypted API error cases
* rustfmt
* add test for normal error (unencrypted)
* rustfmt
* change ports for test, add foreign listener to V2 sanity tests, add ability to select owner api port via command line
* rustfmt
* turn it to 11
* explicit teardown after rpc tests
* update tests with explicit teardowns
* update tests to perform explicit teardown
* fix warnings, ensure all tests teardown
* log output to diagnose CI windows build failures
* disable owner api doctests on windows
* rustfmt