Use LocalBroadcastManager for blockchain state, rather than sticky broadcasts. Introduce BlockchainStateLoader.
Delay SendCoinsFragment.onActivityResult() until fragment is resumed.
Add paymentRequestHash to PaymentIntent.toString().
When restoring wallet backups, probe content to decide on the format rather than using the filename. Some users like renaming their backups.
Rename most occurences of export keys to backup wallet and import keys to restore wallet.
Update Danish localization from Transifex.
Update Finnish localization from Transifex.
Update French localization from Transifex.
Update Italian localization from Transifex.
Update Russian localization from Transifex.
Update Ukrainian localization from Transifex.
Update Korean localization from Transifex.
Update Turkish localization from Transifex.
Update checkpoints.
3.59
prod: Remove 'test' flavor from version.
prod: App icon color.
prod: App name.
prod: App-widget text color.
prod: App-widget preview.