added geographic models and switched to postgres, plus a bunch of other stuff