Support to set Per Session Settings

It would be useful to have a per session settings mechanism that can be used to control optimizations and other functionality. These settings can be query specific configurations, metadata properties or flags to enable/disable any functionality/optimization.

In the discussion for PR https://github.com/facebook/presto/pull/1301,  we talked about how we can use SET command for session settings. These settings are stored in ConnectorSession.

In this PR, following syntax are supported
```
SET var = literal;
UNSET var; 
SET var;
SET;
```   

Presto-cli has a session-id which is used while making REST call to the server. When the cli exit, it makes a call to the server to remove the session configurations. 

At Presto-Cli, we can choose not to have a Presto session by using "no-session" option.  SET command would error out when no-session is used.
```
./presto-cli --catalog=test--schema=test --user=userid  --no-session
```

We need an interface to get results for Non-query statement such as "Drop table" , "Set Commands". These statements don't have output stage.