Updating README, fixing bugs, and making code reusable