fixed migrations bug from issue #1829, down migrations now operate only on completed migrations
complies with "use strict;" tests passing
fixed failing test on postgres
Merge branch 'master' of https://github.com/sequelize/sequelize
Comply with use strict (aka semicolins are fun and profitable)
Code tidy
Remove unnecessary definitions
Universal hooks

Hooks defined on `sequelize` are applied universally on all models

Universal hooks 2

Universal hooks 2

Universal hooks 2

universal hooks 6
Hooks run sync in sync functions
Hooks on Sequelize#define

define hooks 2

define hooks 3

define hooks 4

define hooks 7
Hooks on Sequelize()

hooks9

hooks10
Tests for universal hooks
Tests for Sequelize#define hooks
Tests for Sequelize() hooks
Tests made sync
Update query.js

Regex does not match the following error: ```Sql
Cannot add or update a child row: a foreign key constraint fails (`database`.`Table`, CONSTRAINT `Table_ibfk_1` FOREIGN KEY (`ForeignKey`) REFERENCES `OtherTable` (`id`) ON DELETE SET NULL ON UPDATE CASCADE)
```
Addionnal text like "ON DELETE SET NULL ON UPDATE CASCADE" was not handled by the regex.
Merge pull request #2324 from PymZoR/regex-patch

Update query.js
Tests return promises
Moved dependency from sequelize-bluebird to vanilla bluebird
Sequelize() hooks change name Instantiate to Init