Rename the repository and make it more modularized