In addition to being source-able, each function should be able to be invoked directly as an executable. See #12