modularity/generalization, recent message functionality, wpm, user input