re-implemented project in terms of compose--not as aesthetically pleasing, but the arity problem ...