optirun: split virtualgl off

Trivial change, move code to run_virtualgl, passing argc and argv. Add
declaration for variables "r" and "exitcode" and use that in run_app. This
prepares for supporting other backends.
Support multiple optirun bridges, validate

Add Bridge key to optirun section in bumblebee.conf, add CONF_BRIDGE configure
option, accept -b and --bridge options for optirun.
Todo: implement primus and auto-detection accel/display bridge.
optirun: move --{,no-}failsafe text to have --vgl-* below each other
optirun: support auto-detect accel/display bridge

auto-detection works by trying to locate available back-ends in order. Fail
early if a back-end cannot be loaded. The which(1) implementation is not
fool-proof, but that is not the intend. I assume a bit sanity.
optirun: add primus support, taking precedence over virtualgl
optirun: export BUMBLEBEE_SOCKET for primus
optirun: support OSS drivers with primus

primus hard-codes the proprietary nvidia drivers by default. To make it work for
non-proprietary nvidia drivers (nouveau, radeon, fglrx), set the PRIMUS_libGLa
and PRIMUS_libGLd settings explicitly. It is also assumed that the LibraryPath
setting is empty if open-source drivers are used.
bash_completion: add -b (--bridge) option
VirtualGL as default, primus as alternative

Since there are more unsolved issues and crash with primus, just let VirtualGL be the default setting for now, and make primus available as an alternative backend.
Merge branch 'common-primus' (early part) into develop
File formatting for xorg.conf's