Security improvements

*This branch includes changes from PR #5, so you might want to check that first.*

I covered endpoints used to make changes with a key that should be defined in config file. That may not be a perfect solution, but should work well the way we use it right now.