update how fns are created; properly bundle them and reinit