Catalog can't be empty

If the user leaves the catalog information empty, driver gets HTTP 400 on subsequent operations as Presto doesn't allow that (see https://github.com/facebook/presto/blob/e9a9eeb50e0511d90295ad9459fed802af355666/presto-main/src/main/java/com/facebook/presto/server/StatementResource.java#L157)

This change also puts the initialization of the defaults in driver.d:parseConnectionString
It is evident that I should have made a comment to describe what this was doing. I shall do so in another diff. This obfuscates the password for when I log the results of the argument parsing, then sets it back to the value we got from the user afterwards for use in the program.
It this is also a good reminder as to why I previously didn't print connectionArguments in other places (which it seems I accidentally added back on at least line 93). I shall also address this in the other diff.