Found a spot where exception compatibility broken
Use the 'message' param if specified.
Useful for those darn subclasses :)
Only refresh a crumb if crumbs are enabled
Otherwise legitimate 'Forbidden/Permission Denied' errors are hidden behind an invalid CrumbNotFound error
Fixup Forbidden exception to report forbidden instead of crumb error
(if crumbs are not enabled, then the previous text was incredibly deceptive and incorrect)
Added new 'ForbiddenWithCrumbs' error that can be raised if we still can't access a url after updating crumb (jenkins throws a forbidden if crumb expires, so we need to refresh crumb (if applicable) and retry, only firing a ForbiddenWithCrumbs (which contains additional info on top of Forbidden) if it fails repeatedly.
Added new method 'refresh_crumbs' which performs default population of crumb as appropriate, plus also refreshes crumb and re-checks to ensure crumb setting has not changed.  This functionality removes much of the requirements imposed on the original Forbidden message, which entreated the user to restart the app.. now it will proactively update crumb-age as Jenkins settings are updated (hopefully)
Added XSS/Crumb info to README
Remove spurious comments
Merge pull request #97 from maestrodev/crumbs

Crumbs + Exceptions fixes