Update Migration - Added foreign keys

Added foreign keys
Fix - SQLSTATE[42000]: Syntax error - If user has no permission.

If you have a user without any permission and you try to do a  "Redoubt::getPermissions($user)" you will get an SQLSTATE.

"SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 (SQL: select * from `group_object_permission` where `group_id` in ()) (Bindings: array ( ))"
Fix - SQLSTATE[42000]: Syntax error - If user has no permission.

Even if ids[] is empty set the group_id to null, otherwise it will select any groups.
Merge pull request #2 from CWalig/master

Update Migration + Fix SQLSTATE
Explicitly return empty collections and arrays; save a query where it's unnecessary