Initial infrastructure

Add e2e tests for settings

Add unit tests for settings

Validate required fields

Switch to using url-field directive

Fix package.json