Generate random text with a character-level Markov chain, following Claude Shannon's 1948 approximations to English. Each new character is drawn from the characters that follow the current context (the last k characters) in the source text.