Description
Client session currently don't support impersonation. We need to add that.
On top of it, current impersonation support in batch / interactive sessions need to be fixed up accordingly. We need a whitelist of users who can impersonate other users, similar to Hadoop's. This is so services that use Livy to start sessions (e.g. something like Hue) can connect to Livy as their user and be able to impersonate the actual user making the request. If the user is not on that whitelist, they shouldn't be allowed to impersonate anyone.