Up to this point I've been doing macros the dummy way, recording actions and saving them, etc... however I'd like to get a little more control and get access to things like cursor position, etc, that recording isn't going to give me. Is there a macro API? I haven't found any references to one in the docs.