TODO: * process everything asynchronously * general speed improvement * more example scripts (user contributions welcome)