I managed to solve it last night by using the point 'n' click technique and a lot of help from the hints on intfiction.org. Now that I know the solution, I'll go back and try to work out the keyboard commands. To be quite honest, I don't think it will be possible to solve it with keyboard only, as it does not use a traditional parser. It seems to be very selective and won't even accept a command when you press Enter, unless it happens to be the exact command that it wants.