use a hash set for supportedCiphers + more Cipher cleanup and some unit tests