[SPARK-2189][SQL] Adds unregisterTempTable API

This PR adds an API for unregistering temporary tables. If a temporary table has been cached before, user can unpersist it as well.
Yeah, I think for now we should just remove the cache no matter what.  Eventually we'll probably add names to the cached data so we can provide clear semantics here, but I think its a pretty uncommon case to cache the same data twice under two names and then uncache one of them.

Also, I wasn't arguing we should change the name of the function.  I think its good to have symmetry with register/unregister.  I was wondering if we could have SQL DDL for this same operation since we already have DDL for creating cached tables.