There are a number of different options for this IcP. Pick the one that fits in with what you are planning to do for your project. If none fits, do the multithreaded sorts.
Command Queue (HTTP Server/Webspider Option) - For this option you will write a command processor and have a queue to store commands. The commands might be on the server side or a web spider side. The idea is that you have a set of threads to pull items off the queue. New items come in either from socket rquests (for the wbe server) or because a link has been found on a page (for the web spider). You only want so many things active at any given time though so you queue them up and process things as you have completed others.
Command Queue (Graphical Game/MUD Option) - An ideal way to handle instructions in a game is to do it in a way where the source of the command isn't significant. That way the same code works whether it is a person at this computer doing the controlling, a computer AI, or a remote player playing over the network. Set up code that keeps a queue of some command type. Over time you will extend the types of commands depending on your game. Commands might be things like moving. For the MUD this is an advantage because it allows the some code to control both normal players and computer controlled entities (MOBs).
RPN with Variables (Mathematica Option) - For this you are going to start actually making it so your program does something. It won't be much, but something. Make a simple GUI with a TextArea showing old commands and output and a TextField for new input. I want you to support two types of commands: "varName = RPN_Expression" and "RPN_Expression". The first one associates a value with a name. The second one just prints the value. In both cases, RPN_Expression is a postfix expression with tokens separated by spaces. You should handle numbers, basic math operators, and names of values in the expressions. If a name is used that hasn't been defined you can either use zero or print an error message.
RPC GUI - Write a GUI for an RPN calculator. Have buttons for numbers. Show the stack as a ListView and the input in a TextField. You should have at least 0-9, ., +, -, *, /, and Enter. The Enter pushes the current input onto the stack. Add other options as you can. Use a stack of your own constuction for this purpose.
GUI Chat with List - Make your chat have a GUI that includes a List. The key is that I want the list to be one that you wrote, not one from the standard API. It could be a list of contacts, rooms, whatever.