Removed debugging messages
Now checks if the specified position is free before decrypting
Encrypt/decrypt are now separate methods in the Key class
Moved the encryption code to a common method (crypt)
Cleaned up and refactored some things