Refactory Recursion and CLI, oh my!