runall function. haven't really tested it yet however...