Build: shared libraries and versioning

These changes cause shared libraries to be built if --enable-shared is
passed to configure. In particular, lib/libopenvwitch.so, lib/libsflow.so,
ofproto/libofproto.so, and ovsdb/libovsdb.so will be built.

Additionally, versioning is introduced to each of the libraries objects
paving the way for APIs to be built around them. A detailed comment
outlining the rules for changing a version number is provided in
configure.ac. Note that at this time, the version number is set to
1.0.0, no API is specified yet, and there are no requirements to maintain
any sort of compatibility in any of the libraries.

Two new builds are added to Travis to cover building of shared libraries
and running the testsuite with utilities linked against the libraries.

Signed-off-by: Scott Mann <smann@noironetworks.com>