Converted Phactory to use PHP namespaces and instance objects

The structure of Phactory was causing problems with autoloaders, since
there were Phactory.php and a PhactoryMongo.php files, but each file
contained a class with the same name. In addition, the classes for
MongoDB were encapsulated in a PhactoryMongo subdirectory, but the
classes for testing SQL databases were not.

Furthermore, the use of a fully static class caused fatal errors when
attempting to run the unit tests with PHPUnit. This is because of the
static property for $_pdo. PHPUnit was attempting to serialize this
object and failing to do so. Unfortunately, efforts to set
backupStaticAttributes to false in phpunit.xml or disable it at the
class/method level failed, and I found that this could also be related
to the following bug:

https://github.com/sebastianbergmann/phpunit/issues/254

After setting processIsolation="false", stopOnFailure="false", and
stopOnError="false", I was able to debug indiviual problems one-by-one
until the tests all passed, then I could turn processIsolation back on,
and the tests continued to pass.

As a result of my changes, this version of Phactory BREAKS BACKWARDS
COMPATIBILITY with all previous versions, but I think it leads to a
cleaner, easier-to-use, and easier-to-test interface.
Updating composer.json to include Lumbendil's changes:

See Lumbendil's commit here:
https://github.com/Lumbendil/phactory/commit/e205088762e060770a1bc072bd25f6de67970398
add function fill to row and write a test for it

Cherrypicked cschwendiman's commit into the feature-namespaces branch.
The original commit is 147795b802
Added PgsqlUtil

Cherry-picked from
https://github.com/amsa/phactory/commit/8fe2feeeb9f4daacd4b9ef372d635b3b17d0e063

Conflicts:

	lib/Phactory/DbUtilFactory.php
Readme updated
Bumping required version of PHP
Abstract base class for DB-specific backend classes and Postgres support
added

Cherry-picked from:
https://github.com/arcijsg/phactory/commit/e309067bc9202a6cf460c03faf24d9caeda83312
SqliteUtil and MysqlUtil extends Phactory_DbUtil_Abstract

Cherry-picked from:
https://github.com/arcijsg/phactory/commit/78f8e102a2965c21c85412f07d181219e095109e

Conflicts:

	lib/Phactory/Sql/DbUtil/MysqlUtil.php
	lib/Phactory/Sql/DbUtil/SqliteUtil.php
Phactory_Table::quoteIdentifier() proxy method added
Phactory_Row: DB-specific quote char for column names

Cherry-picked from
https://github.com/arcijsg/phactory/commit/a0538196c0d6f2c9e6871c36fd527b714928b67f

Conflicts:

	lib/Phactory/Sql/Row.php
Phactory_Blueprint: DB-aware way of quoting table names

Cherry-picked from
https://github.com/arcijsg/phactory/commit/83b639656c666178cccf7c06582a3bae8c9284f1

Conflicts:

	lib/Phactory/Sql/Blueprint.php
Phactory::getAll() quote column/table names with BDUtil class

Cherry-pick from:
https://github.com/arcijsg/phactory/commit/0ae50f470607a9dfcab8f1e2d67fef4d37e05b79

Conflicts:

	lib/Phactory.php
Fixing a typo that caused tests to fail
Updating test config so that tests stop on failures/errors
Merge branch 'master' of https://github.com/chriskite/phactory

* 'master' of https://github.com/chriskite/phactory:
  Added composer.json file.
Merge branch 'master' into feature-namespaces

* master:
  Added composer.json file.

Conflicts:
	composer.json
Merge pull request #19 from ramsey/feature-namespaces

Feature namespaces