Add tests, some tidying

Hi, I had some spare time over the last couple of days and thought I'd take another look at this. Added some test cases, fixed handling when the desired Toggl values are `None`, and started to tidy the code a bit.

The only breaking change is that environment variables have been updated to use more explicit names. Didn't want to do too much beyond that as not sure how you're using it internally.