The Dynamic Renamer supports date guessing and reformatting. It didn't handle some of the cases here, but I've been modifying the code to support some more incomplete dates (and fixed a few typos). Example:
Road and Track April 2015 --> Road and Track 2015_04
Road and Track 0415 issue --> Road and Track 2015_04 issue
Road and Track 042014 --> Road and Track 2014_04
The one it won't handle fully is this one (it detects only the May 2015 as part of the date):
Woodworking April-May 2015
And you want the format to be:
Woodworking 2015-04-05
I wouldn't advise using that format, as it then becomes an ambiguous date (it looks like April 5th or May 4th of 2015). It would be better to name those files as something like: 2015-04,2015-05 or 2015-04,05, By using a comma as a range separator, instead of a dash, you give yourself future flexibility by removing the built-in ambiguity for later re-renaming or identification.
I'll post an update shortly, in case you're interested.