You are working for a cryptography department, where one of your jobs is to decipher intercepted messages that have been encrypted using a book cipher. The messages are sent by different people, each of whom writes their plaintext in a different language to confuse any attempt to decipher the messages. But this has made them a little too confident, and you have discovered a very useful secret: unaware that their messages can be cracked, each sender tends to use the same book passage over and over; all that changes is where in that passage they start the encryption. Being very lazy, they always start the encryption within 20 letters of the start of the passage. So for the purposes of this task, the 'key' is simply the starting position in the book text, and is a number from 0 to 20. Your job now is to write a computer program (a real executable program, not a spreadsheet) that can be used to decrypt these intercepted messages. The program will be required to read the ciphertext from a file and to display the plaintext on the screen, along with the key that was used to encrypt it. You will be asked to demonstrate your program to the tutor in the lab class on the due date. This is so that you will be there to run the program and make any decisions that need making. You will be given several ciphertexts to practice on, but in the demonstration you will be asked to demonstrate your program on files you have not seen. You may write your program in whatever programming language you wish.