Adds database pieces, minor changes to routing/server, minor changes to formatting

This pull request encompasses the following changes:
-Adds the database files from Tommy's pull request, since he is having issues
-Removes the previous testUser and testDatabase files (now replaced by Tommy's code)
-Adds minor formatting changes as per Mike's comments in his previous pull request
-Adds new lines to end of all database files
-Merges Mike's pull request
-Changes configuration for server.js, routes.js to correctly serve index.html and handle search requests

*Note, this does not pass grunt test right now for reasons I have yet to figure out, but I didn't want to stall this pull request any further.

**Note, Tommy, please review this in extra careful detail to make sure I added all pieces of your code from your previous pull request.  Please double check that all the files are there, the changes made to files like server.js reflect your changes, and that the dependencies are up-to-date.

As of 4PM ET, this pull request also includes the following changes:
-database.js was updated to enhance the schema for users, incorporating the necessary pieces for Facebook authentication
-passport.js was updated to use Bookshelf rather than Mongoose for queries, adding/saving new users
-Removes testUser and testDatabase again
-routes.js were updated to use for testing searches***

A few notes:
-Tommy or I will have to look into several aspects of the new code in passport.js (specifically, NOT saving a user that's already in the database and how to deserialize users), but neither of these are code-breaking right now.  I thought it was better to get this pull request up now so all pieces could be integrated, up-and-running.
-Tommy will need to fill in his utility function, at least the one that searches for inventory, to not use placeholder information.  He will also need to add a response piece that is sent back to angular with the data.  Something along the lines below would work (but don't hold me to this exactly).  Once the response is sent back to the front-end, it's up to Mike/Collin's code to do the rest!

exports.searchForItemInInventory = function(req, res) {
	//store the search item value
        var reqSearchValue = req.body.item;
	//select all from inventory where the item is req.value;
	new Item({item: 'wrench'})
	//search for the item
	.fetch()
	.then(function(item) {
		//if theres no item
		if(!item) {
			console.log('NO ITEM FOUND');
		}
		//if there is item
		else {
			console.log('ITEM FOUND', item.attributes);
                        response.send(200, item);
		}
	})
	console.log('SEARCH FUNCTION FIRED OFF');
};
I don't know that the password actually matters, but might as well if we
are planning on handing this off not yet deployed. This only matters for
the local deployment. Either way, on the local configuration, each
contributed has to set up his/her Postgres configuration.

On Thursday, September 4, 2014, Collin Wu <notifications@github.com> wrote:

> In app/server/database/database.js:
>
> > @@ -0,0 +1,61 @@
> > +'use strict';
> > +
> > +var path = require('path');
> > +// var Bookshelf = require('bookshelf')(knex);
> > +var knex = require('knex')({
> > +  client: 'pg',
> > +  connection: {
> > +    host: '127.0.0.1',
> > +    user: 'jonathanwarrick',
> > +    password: 'lenderbee',
> > +    database: 'lenderbee',
> > +    charset: 'utf8'
> > +  }
> > +});
>
> should we leave the user and password blank?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/BraveBeehive/LenderBee/pull/46/files#r17154386>.
>