Do background of Behat tests in database

Instead of running the background portions of Behat tests in the
browser directly manipulate the database.  This will result in way less
overhead for each test and less chance for failure in a non-test
background segment.
Fix CI db credentials
Don't always instantiate database

The FeatureContext class gets created for every feature and scenario.
Many of these do not need access to the database.
Used a static property to hold a connection so we don’t have to create
it new for every scenario.
More effective PDO resource management

The static connection was hitting packet limits.  Also attempting to
use a persistent connection made the transactions fail.  So instead we
eat the overhead of creating new connections so the tests run.
Merge pull request #621 from jrjohnson/fasterbackground

Do background of Behat tests in database