big round of refactoring to go fully encrypted, still a mess but core open handshake is working