include, tag: remove bogus const enum declaration

A const enum return value is a tautology. Fixes the following warning:

    src/gumbo.h:361: warning: type qualifiers ignored on function
    return type
Move to using git submodule for testdata.

This clarifies what revision of the testdata is being used, useful
for seeing what has changed since!
parser, tag: remove always true asserts

It's implementation-defined whether an enum with only non-neaative
values is signed or unsigned. If it's unsigned, the `tag >= 0` check
generates a warning.

Fixes the following warnings:

    src/parser.c:682: warning: comparison of unsigned expression >= 0
    is always true
    src/tag.c:179: warning: comparison of unsigned expression >= 0
    is always true
parser: remove dead store

The `node` variable is assigned to but its value is never used. Remove
it altogether. Fixes the following warning:

    src/parser.c: In function 'clear_stack_to_table_body_context':
    src/parser.c:898:14: warning: variable 'node' set but not used
parser: silence 'no return value' warning

The code path should be unreachable so add an abort() statement. Fixes
the following warning:

    src/parser.c:1550: warning: control reaches end of non-void function
char_ref: remove always true assert

size_t is unsigned so a >= 0 check is always true.
doc: fix long lines in README.md
gitignore: ignore automake artifacts
build: unversion auto-generated build artifacts

Don't version generated files, have autogen.sh create them at build
time. This should make life easier for people that have to re-run
autoconf (or automake) for their system, then end up with a git
index full of clobbered autotools boilerplate.

When I say 'people', I mean 'me.'
build: fix up `make check` include path

* Add the tests/ directory itself to the list of include paths.
* .gitignore the produced gumbo_test binary and test runner logs.
test: link against system libgtest if available

Make ./configure check if libgtest is available system-wide and if so,
link against that. Before this commit, the `make check` target required
a checkout of libgtest in $(srcdir)/gtest - somewhat inconvenient.
build: fix race condition in test deps

Declare proper transitive dependencies when building with an in-tree
copy of libgtest so that `make` knows when to build what.

A nice side effect is that it no longer runs libgtest's configure script
on every invocation of `make check`. Should speed up the edit/build/test
cycle a bit.

Newer versions of automake are more aggressive when it comes to
parallelizing builds and that becomes apparent when executing
`make -j<n> check` with n >= 2: the test suite build failed spuriously
because `make` tried to compile the test runner and run libgtest's
configure script at the same time.
Merge pull request #18 from bnoordhuis/compiler-warning-fixups

Compiler warning fixups
Add a pointer to Ruby bindings in the README.
Updated README with contributor license agreement.
Remove documentation exception from README; I'm not sure if I can really do that, so better to err on the safe side.
Merge pull request #19 from bnoordhuis/assorted-autotools-fixups

Assorted autotools fixups
Merge changes.
Merge pull request #15 from gsnedders/testdata-submodule

Move to using git submodule for testdata.
Updating with latest from google upstream

Merge branch 'master' of github.com:google/gumbo-parser