* Refactor swaps:
* Remove references to bity fallback, it aint happening
* Consolidate sagas to single orchestrator function like other sagas
* Grab rates once, dont continuously poll
* tscheck
* Re-instate the auto-fetching behavior. This time, only notify the first time.
* Make CurrentRates responsible for redux actions. Fix up some typings.
* Remove commented code.
* Update snapshot.
* progress
* Normalize bity api response
* Filter api response
* Track swap information in component state
* Update dropdown onchange
* remove dead code
* Update Min Max Validation
* Update minmax err msg && fix onChangeOriginKind
* Add origin & destination to redux state
* Update types & Update tests
* Update types
* Update swap.spec.ts test
* Remove commented out code
* Remove hardcoded coin array
* Create types.ts for swap reducer
* Update swapinput type
* Update bityRates in localStorage & Replace all instances of ...Kind / ...Amount props
* Add shapeshift banner
* initial work for sagas
* Update Types
* Update swap reducer initial state
* Update Types & Store empty obj for bityRates / options
* Update more types
* added shapeshift file and rates comments
* action reducers and prop mapping to components
* add typings and swap icon
* more actions reducers and sagas
* debugging shapeshift service
* add Headers
* Fix content type
* add order reset saga and ui fixes
* remove console log and swap b/w Bity and Shapeshift
* working state for Shapeshift and Bity - tested with mainnet
* add icon component
* UI improvements and fix select bug
* fix timer bug
* add bity fallback options and toFixed floats
* tslint errors
* add arrow to dropdown and add support footer
* Add service provider
* fix minor $ bug and stop timer on order complete
* better load UX and dropdown UX
* fixed single test
* currRate prop bugs and reduce LS bloat
* takeEvery on timer saga and don't clear state.options to restartSwap reducer
* export tx sagas and fix minor type
* Add ShapeShift Rates functionality when selecting a ShapeShift pair.
* type fixes
* BugFix: Don't change displayed ShapeShift Rate Inputs on every dropdown change
Also contains some caching / performance improvements
* BugFix: Don't remote rate inputs when falsy amount
* fix type error
* Progress commit
* Implement saga logic
* Make address field factory component
* Shorten debounce time
* Make new actions / sagas for handling single token lookup
* Implement working version of litesend
* make unit dropdown searchable, add props for all tokens, custom validation
* add string generators for EIP 681 token & ether transactions
* add new selectors
* add request payment tab
* Change saga into selector
* Add failing spec
* fix broken test
* add debounce to error message
* fix tests
* update snapshots
* test coverage
* move setState disabled property from debounce so we instantly can go to next step on valid amounts
* reset amount value (useful for switching between tabs)
* much deeper test coverage, fix debounce ux, and fix bity flashing at swap page load
* fix minor failing test
* seperate shapeshift erc20 token whitelist
* fix saveState store bug
* break orderTimeRemaining saga up and rewrite tests
* fix tslint error
* add isReadOnly prop to address field
* use AddressField component, add additional validation
* make prop optional
* correct validation
* allow for request tab to be used with view only wallet
* account for undefined activeTab
* add types
* progress
* Normalize bity api response
* Filter api response
* Track swap information in component state
* Update dropdown onchange
* remove dead code
* Update Min Max Validation
* Update minmax err msg && fix onChangeOriginKind
* Add origin & destination to redux state
* Update types & Update tests
* Update types
* Update swap.spec.ts test
* Remove commented out code
* Remove hardcoded coin array
* Create types.ts for swap reducer
* Update swapinput type
* Update bityRates in localStorage & Replace all instances of ...Kind / ...Amount props
* Add shapeshift banner
* initial work for sagas
* Update Types
* Update swap reducer initial state
* Update Types & Store empty obj for bityRates / options
* Update more types
* added shapeshift file and rates comments
* action reducers and prop mapping to components
* add typings and swap icon
* more actions reducers and sagas
* debugging shapeshift service
* add Headers
* Fix content type
* add order reset saga and ui fixes
* remove console log and swap b/w Bity and Shapeshift
* working state for Shapeshift and Bity - tested with mainnet
* add icon component
* UI improvements and fix select bug
* fix timer bug
* add bity fallback options and toFixed floats
* tslint errors
* add arrow to dropdown and add support footer
* Add service provider
* fix minor $ bug and stop timer on order complete
* better load UX and dropdown UX
* fixed single test
* currRate prop bugs and reduce LS bloat
* takeEvery on timer saga and don't clear state.options to restartSwap reducer
* export tx sagas and fix minor type
* Add ShapeShift Rates functionality when selecting a ShapeShift pair.
* type fixes
* BugFix: Don't change displayed ShapeShift Rate Inputs on every dropdown change
Also contains some caching / performance improvements
* BugFix: Don't remote rate inputs when falsy amount
* fix type error
* Progress commit
* Implement saga logic
* Make address field factory component
* Shorten debounce time
* Make new actions / sagas for handling single token lookup
* Implement working version of litesend
* Change saga into selector
* Add failing spec
* fix broken test
* add debounce to error message
* fix tests
* update snapshots
* test coverage
* move setState disabled property from debounce so we instantly can go to next step on valid amounts
* much deeper test coverage, fix debounce ux, and fix bity flashing at swap page load
* fix minor failing test
* seperate shapeshift erc20 token whitelist
* fix saveState store bug
* break orderTimeRemaining saga up and rewrite tests
* add new swap icon
* remove unused allowReadOnly prop
* change offlineaware to walletdecrypt for litesend
* fix LiteSend changewallet bug
* fix error message UX
* fix button styling to match develop
* fix liteSend test
* Fix LiteSend UX on unavl tokens, dropdown null value, and don't show decrypt in litesend after successful wallet decrypt.
* add litesend network check