Add gitignore
Update url schemes, first pass at controller code, a lot of new tests.