implemented special save last commandline command ("*" at beginning of commandline macro)

 * only works as part of commandline macro,
 * at the beginning of other macros, it is treated like an arithmetic asterisk
 * variables defined in cmdline.cpp are now declared by new cmdline.h
moved StateExpectQReg from parser.h to qregisters.h

 * parser.cpp|h should be reserved for generic and misc. stuff.
   the StateExpectQReg class is used almost exclusively by qregisters.cpp|h
 * resolves a circular header dependency issue
cleaned up QRegister state interface (can pass register by reference)