change order of type parameters in FunGraph
expose less of FunGraph
add prototype llvm JIT
expose FunPtr () and let the user castFunPtr explicitly, until we figure out polyvariadic magic