Pld/add json column

This branch requires clients and devs to use PostgreSQL.  Most of the changes are fixing flaky tests that were exposed when the build was switched to run with PostgreSQL.  In my opinion it is acceptable to require PostgreSQL for now.  I do not think this is an any more onerous requirement than MongoDB.  The trade off is that we remove the MongoDB requirement and have a strict database requirement.

However, we can and will write the JSON query code so that a motivated developer could remove PostgreSQL and write queries for their own backend.  I.e. we check to see if the DB is PostgreSQL, if so we use PostgreSQL JSON queries, otherwise we raise an exception but leave it open to extend through something like pulling out the text and converting it to a dict and indexing into it.  Moving forward I will add a layer of indirection here https://github.com/onaio/onadata/pull/77#discussion-diff-8642930R179, using a `_count_group` that executes PostgreSQL depending on the backend database.

The main goal of this branch is to allow us to write any new JSON queries using the `Instance.json` field.  I will go back and remove `ParsedInstance` and all `MongoDB` dependencies ASAP, but as time permits.