* separate method MyForm.resetNamecoinConnection() - sets MyForm.namecoin
to fresh instance of namecoin.namecoinConnection, tests it and shows or
hides "Fetch Namecoin ID" button;
* that method is called when MyForm initializes and when settingsDialog
instance is accepted;
* namecoin.namecoinConnection.query() checks found address and always
prepends it with display name, if query result doesn't contain "name"
field it will be the query string.
- rearranged code to reduce cyclic dependencies
- doCleanShutdown is separated in shutdown.py
- shared queues are separated in queues.py
- some default values were moved to defaults.py
- knownnodes partially moved to knownnodes.py
- got rid of shared config parser and made it into a singleton
- refactored safeConfigGetBoolean as a method of the config singleton
- refactored safeConfigGet as a method of the config singleton
- moved softwareVersion from shared.py into version.py
- moved some global variables from shared.py into state.py
- moved some protocol-specific functions from shared.py into protocol.py
- namecoin connection errors have now severity "info" instead of
"error", because it just confuses peopel who don't have namecoin
configured
- partially addresses #893
- namecoin lookup now also includes name of the record in the recipient
field
- namecoin lookups now support multiple semicolon-separated
recipients like the other recipient-related functions. If there are
multiple recipients, namecoin lookup will look up the last entry on
the line, for example if you have "a; b; c" in the recipient line,
it will lookup "c"
Tweaks to fetching user/password from namecoin.conf that should now
always set values (in particular even if namecoin.conf is there but
has no rpcuser / rpcpassword set).
Add a test button to namecoin UI settings, which tries
out the connection and reports its result back. Also use
namecoin.conf as config file to load default RPC user/pass
combination from.