For BZ 56653
Improve handling of Context.versions field.
Do not assign an empty array to this field, neither when creating a new versions list, nor when removing the last version from it. The mapping algorithm does not expect this list to be empty. Mark the versions list field as volatile, because it is updated when a Context is started or stopped.

This backports r1604435 and a bit from r1604320 and r1604928.

git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc7.0.x/trunk@1608983 13f79535-47bb-0310-9956-ffa450edef68
Correct javadoc.

git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc7.0.x/trunk@1608986 13f79535-47bb-0310-9956-ffa450edef68