Fix for the execution of pymol macros via the pymol.macro_apply user function.
The PyMOL commands are now written to a temporary file and this file is executed via the @x run
syntax. The PyMOL commands sent into the interface are asynchronously processed so that executing
a macro in that way always fails. However the commands in a *.pml macro file are processed
synchronously, eliminating the annoying bug.