Fix to problem with untracked files stopping release #40

Added more thorough check for repo dirtiness when release is called.

Now distinguishes between unstaged changes and untracked files. Untracked files can be ignored by setting 
ignoreUntrackedFiles := true in the project settings, allowing the user to release even if they have untracked files. This setting defaults to false, for compatibility with existing code.