Add authentication. Closes #17.