STORM-348: Netty SASL Authentication

Hi Bobby,
  I have made the changes for the SASL Netty Authentication.  Currently the credentials used is with the topology name, but I thought I would be using Kerberos token instead as we agreed I will use randomly generated credentials that are kept in zookeeper.  I will try to find it out which method to call or if you can help me out it would be great.  In the meantime you can review the changes.

 I have tested the changes but didn't create the unit tests.  I will create a separate JIRA for unit test and get it done.  I am learning Clojure and will get it done soon.

Thanks,
Raghavendra Nandagopal
Unfortunately, the file.encoding property has to be specified as the JVM starts up; up.  The character encoding used by String.getBytes() and the default constructors of InputStreamReader and OutputStreamWriter has been permanently cached.
java -Dfile.encoding=UTF-8
Charset.defaultCharset() will reflect changes to the file.encoding property, but most of the code in the core Java libraries that need to determine the default character encoding do not use this mechanism.
When we are encoding or decoding, we have to query the file.encoding property or Charset.defaultCharset() to find the current default encoding, and use the appropriate method or constructor overload to specify it.