Fix 'visibility' attribute ignored warnings.

This commit removes the WEBVTT_INTERN decorator from static functions.

WEBVTT_INTERN sets the visibility("hidden") attribute on GCC 4
and later. Functions declared static already have hidden linkage
and gcc 4.7.2 -Wattributes warns about the redundant attribute being
ignored.

According to http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html
"The visibility attribute should be applied only to declarations that
would otherwise have external linkage."
Merge pull request #16 from rillian/dev-fixes

Shorten --enable-valgrind-testing to --enable-valgrind.
Remove superflous checks in configure.ac.

Removing checks for memset, malloc, free, stdlib.h, and string.h as they are always available.
Issue #18 - Initialize string refcount in webvtt_create_string

In addition to initializing the refcount, I have also added some
documentation to explain why 'long' is used in place of 'int' for the
reference count's value on win32 platforms.
Merge pull request #18 from caitp/issue-18

webvtt_create_string doesn't initialize refcounts
Corrected typo from include/webvtt/util.h:81

Replaced 'typ4edef' with 'typedef'
Change #warn to #warning in include/webvtt/util.h

MSVC should not be used if that branch is encountered, and gcc implements
a #warning, so perhaps if the compiler is unknown, #warning will be more
acceptable than #warn
Merge pull request #37 from RickEyre/issue-10

Remove superflous checks in configure.ac.
Merge pull request #38 from caitp/issue-38

Syntax error in util.h
Remove unused AC_FUNC_MALLOC check.

This macro is about enabling an rpl_malloc wrapper if the platorm
malloc(0) doesn't return a valid pointer. I don't know if we're
depending on that behaviour, but we're not providing a replacement.
Merge pull request #41 from rillian/malloc

Remove unused AC_FUNC_MALLOC check.
Add proper memory management to Node C++ bindings.

Head on a Cue C++ binding is now deleted when the destructor is called. The Node C++ bindings
now use virtual destructors and are deleted in a cascade through the InternalNode's destructor.

Removed Node::parent as it is not necessary and is going to be taken out of the webvtt_node in
the future.

Note: The Node destructor doesn't need to clean up the webvtt_node * reference it has as it will
be deleted when the owning cue frees it's webvtt_cue.x
Merge pull request #33 from rillian/visibility

Fix 'visibility' attribute ignored warnings.
Merge pull request #42 from RickEyre/issue-20

Add proper memory management to Node C++ bindings.
Rename lexer.c's T_INITIAL to T_START.

This avoids conflict with parser.c's T_INITIAL which we'd like
to move to parser_interal.h. Ideally the lexer would be independent
which would let us change the name back.
Move parser state and mode enums to the header.

This allows us to use the enums in the state structures which
gives us both type checking, and more readable debugger output.
Moved lexer states into parser_internal.h

Renamed lexer states to begin with L_ rather than T_, so that they may
be distinguished from parser states.
Merge pull request #27 from rillian/state-enum

Use enum types for parse state
Add explicit return values for firstNode() and lastNode() in node bindings.
Remove another 'static WEBVTT_INTERN'.

These cause warnings on gcc and this one should have been
removed in the fix for issue #33.

Fixes issue #47.