Conditionally run grunt tasks only if a source directory has been changed since the last time the task was run