zebra: support static srcdest routes

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
DEBUG: build: silent
DEBUG: gitignore
lib: add separate output fd support to VTYs

to be used with stdin/stdout terminals, this adds support for writing to
a different FD than we're reading from.  Also fixes error messages from
config load being written to stdin.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
lib: add vty_stdio()

this introduces a new public/API function to the vty code for opening a
VTY on stdin/stdout.  Intended for unrestricted use by the individual
daemons, i.e. "offical API".

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
zebra: add --terminal/-t option for VTY on stdio

this allows running zebra accepting commands from stdin, writing results
to stdout.  In addition to terminals, both files and pipes should work
correctly.  Zebra does not currently exit on losing the input terminal.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
tests: add integration tests

Author: David Lamparter <equinox@opensourcerouting.org>
Author: Christian Franke <chris@opensourcerouting.org>
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
tests: add pyzclient for adding test routes to zebra

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
tests: add some zebra rib integration tests

Signed-off-by: Christian Franke <chris@opensourcerouting.org>
tests: add support for FreeBSD
tests: use nose to run python tests; reorganize tests
tests: add a module to access Quagga constants from python
tests: drop DejaGNU; use Python testrunner for C programs

Move all the C programms into the python test hierarchy and add
python scripts which ensure that they are run when the testsuite
is executed.
tests: Add a .travis.yml so we can use travis-ci
LOCAL: Modify build for arch
LOCAL: start quagga with group as argument
tests: nexthop iteration test might take longer that default timeout
tests: add a test to check zebras rib/fib cleanup

Test that zebra will remove routes from the RIB as soon as the
client that installed it disconnects.
tests: add support for srcdest
tests: add more srcdest rib/fib tests