Initial commit, gitignore, and initial framework