* BE proposal contribution tracking
* FE proposal contribution tracking
* validate contributions
* make sure we catch errors in the 'confirmation' listener
* remove console.log
* lowercase from address compare
* remove validate_contribution_tx from post_proposal_contribution
* make sure BACKEND_URL gets set for server in production mode
* ssr api calls by path
* turn off redux logger on server
* massage preloaded state (BNify JSONed BNs)
* make sure fetchProposal returns async/promise
* make sure render works on ssr (check window refs)
* linting issue
* web3 flask + read proposal
* tests
* use build/contracts indtead of build/abi
* fail if endpoint not set
* batched calls
* add web3 read to GET proposal(s) endpoints
* basic integration of BE crowdFund data into FE
* handle dead contracts & omit on FE
* allow web3-free viewing & move crowdFundContract out of redux store
* upgrade flask-yolo2API to 0.2.6
* MetaMaskRequiredButton + use it in CampaignBlock
* convert to tuples
* farewell tuples
* flter dead proposals on BE
* give test_proposal_funded deadline more time
* Add models & endpoints
* Implement proposal updates.
* Reset state on close. Add missing key. Prompt on close if they will lose stuff.
* Dont warn if they submitted.