This is a combined patch for
MCHANGELOG-69, MCHANGELOG-70, MCHANGELOG-71, MCHANGELOG-72, MCHANGELOG-73. I have produced individual patches for each issue so that the code can easily be reviewed by the committers and then this combined patch to allow all those mini-patches to be easily applied against the trunk.
I hope this is considered ok as I could not think of a better way to make the job of the committer easy, plus it was right pain to do
All updates made against trunk revision 560535.
Note there are two change in this combined patch to the individual patches - due to
MCHANGELOG-68 I had switched on ignore test failures - and being an idiot had not kept track of how many unit tests were failing. To my horror I noticed that loads of the tests were failing but not due to functional issues as such but instead due to the NPEs being raised because a lack of injected values. I have since changed the code to, where appropriate, check for nulls and thus all the unit tests NPEs have gone away. Sorry I should have had my eye on this right from the start.