some steps toward dynamically loading programs. not really working yet. i need to read up on dynamic binding and how macros work