Fix Casting() condition to work when passed a spell ID.

The checks in Casting() were missing one for if the spell ID parameter was
passed and was not the name of spell list, "helpful" or "harmful".

This fixes ticket 382 by @Genkidama.
Check for a non-nil table before referencing its values.

This fixes ticket 395 by @Shalimaar.
Don't pass more arguments than the format string requires.
Manipulate the Ovale trace/bug flags more accurately.

Add a new method ResetTrace() that resets the trace/bug state and is
called prior to a script being compiled.

Rename the PostRefresh() method to "UpdateTrace" to more accurately
reflect its actions.
Encapsulate and enhance the logging facility within Ovale.lua.

Cap the number of lines held by the log to a maximum of 4096 (2^14) lines
to prevent table overflows causing memory allocation errors.  This fixes
the following tickets:

    ticket 392 by @ggrider
    ticket 396 by @sparrowlab
Fix improper checkbox name in shaman and druid scripts.

The improper name was causing a blank checkbox to be generated in the
options menu.