This is similar to #31 except that python-functionfs will still be used to handle function provisioning instead of gt. This has the added benefit of not relying on an external program to provision the function, and simplifies the setup especially when there aren't a lot of different other functions running. Essentially instead of `gt load`/`gt rm`, one could use something like `my_function.py --setup`/`my_function.py --teardown` to provision the function before running `my_function.py` as a function.