Merge GetCoins and HaveCoins into CCoinsViewCache::AccessCoins

Both GetCoins and HaveCoins require a hashtable lookup, while most often we need both. Combine them into AccessCoins which returns a pointer rather than a reference (and gets rid of the overloaded name).

Also replace some calls to the (copying) GetCoins with AccessCoins.