Implement user accounts, closes #21