adding cluster user for query execution

Fixes:
	1. User related configs will be resolved when session is opened. Cluster user, queue etc. belong to this category
	2. from cli, current logged in user will be passed as cluster user
	3. Domain can be specified on grill level and will be passed to authentication providers as needed
	4. Config will be resolved by config loaders. This can be chosen from the ones provided, or can be custom. Providing three such implementations. Each has its own config.
	5. Test cases for each loader. And test cases for verifying cluster user and loggedin user are set in session.
reviewed comments and made changes. Nothing major.
Merge pull request #125 from prongs/cluster_user_clean

adding cluster user for query execution