finished cipher
tidied up, added comments
Final, cleaned up copy