This change adds the "required" annotation. The "required" annotation requires the environment variable to be present. If it is not present, an error message is printed and the program exits.

The exit behavior is in the FailureFunc variable. This variable can be changed to allow for custom behavior upon required environment variable failure.

Fix #2