Bug 60284: Prolong watchdog timeout during <wait>

This change adds logic to VDD to prevent a watchdog timeout that could be
caused by a long <wait> event.  Now, during wait events, the watchdog timer
is extended by the duration of the wait.

Testing done:

Ran test script with long waits.
Bug 61860: Add timeout attribute to alert event

This change adds the timeout attribute to the alert event with a default
value of two seconds.

Testing done:

Ran against a test with a delayed alert.  Without the timeout, the alert
wasn't seen.  With a timeout, the alert was after the delay.

Conflicts:

	src/org/sugarcrm/voodoodriver/Event/Events.xml
	src/org/sugarcrm/voodoodriver/EventLoop.java
Bugs 61883 and 61884: Restore regex delims

During the overhaul of regular expression and text searching in VDD, an attempt
was made to normalize the handling of regular expression input by only
actually doing a regular expression search if the provided string is a
regular expression.  As part of that, the "/" delimiters in use were ignored
and stripped.  As it turns out, that was a bad idea since searches are done
using regular expression metacharacters in the expectation that they'll be
a plaintext search (bug 61883).

The fix is simple: in order to be considered a regular expression, a provided
string must both contain metacharacters and be delimited by "/".  The real
strangeness, that the XML tag for both text and regex searches is <regex> is
left alone.

Testing done:

Various searches with various strings.  Correct behavior seen in all cases.
Strip / delims

This is a follow-up to the previous change.  If a provided search string is
intended to be a regex, but contains no regex metacharacters, VDD treats it
as a plain search string.  The previous change neglected to remove the /
delimiters; this change does so.

Testing done:

Search script using attach title="/.../".
Implement compatibility methods for SugarWait

To ease the transition when the dev_v2 branch gets merged into dev and then
into master, several legacy methods are (re)implemented here to allow
SugarWait to run with no code changes.  The new methods are still present,
so once this code is on master, SugarWait can be seamlessly transitioned.

Testing done:

Ran a test that made use of SugarWait.
Allow for a flat Vars structure.

A lot of the installed test code assumes that Soda vars live on after their CSV
event has terminated.  To account for this, the Vars object needs to be able
to maintain a "flat" context, rather than neatly separating variables by
scope.

This change creates a flat setting for the Vars object to maintain
compatibility with current tests.

Testing done:

Ran a login/logout test (in conjunction with the follow-on change).
Read from the CSV file even with no children.

There is at least one example in the test codebase of (mis)using the CSV event
like so:

<csv file="..."/>

This populated the context-less soda vars structure with the data in the CSV
file.  To keep those tests from breaking, the previous change (which flattened
the Vars structure) and this one allow the CSV file to be read and the vars
it sets to live on after the event.

This change adds some workarounds that ensure the CSV file will be read even
if the event has no children.

Testing done:

Ran a login/logout test.
Fix a javadoc warning

Testing done:

Compiled VDD.