Fix currency choice restriction (RT-2146)

Fixes the issue: https://ripplelabs.atlassian.net/browse/RT-2146

Previously the account_currencies restriction would overwrite any federation currency restriction. This patch implements the correct behavior where the Ripple network currency restrictions are intersected with the federation restrictions.

Adds a loading message while currency restrictions are being determined.

Adds an error message if there are zero valid currency choices.

Fixes a race condition where an old account_currencies request can succeed later, even if the destination has since changed.