Fixed bug that unable call query_2 after call describe method on dynamodb2 module

This fixes the #2828 and #2708 issues.

As shown on that issue, there was a strange behaviour when calling describe method and then query_2. 

I've found out that when you create a fresh new Table instance it has not schema, indexes or even global_indexes. So when you call query_2 method is check whether you have those parameters and if you haven't it tries to perform the call as usual. 

In the other hand when you call describe method it was setting all those instance variables but self.global_indexes which was causing it to raising an exception on the following statement at the begging of query_2 method as shown below;

```Python
 if self.schema:
            if len(self.schema) == 1:
                if len(filter_kwargs) <= 1:
                    if not self.global_indexes or not len(self.global_indexes):
                        # If the schema only has one field, there's <= 1 filter
                        # param & no Global Secondary Indexes, this is user
                        # error. Bail early.
                        raise exceptions.QueryError(
                            "You must specify more than one key to filter on."
                        )
```

As Global Secondary Indexes were being sent by the DynamoDB API, all I had to do was to update the instance variable self.global_indexes with that information.  Now it's working as expected :)

I hope you find my pull request useful. If you do, please accept my pull request.

Best Regards
@pauloubuntu, @xethorn I like this idea. Think you could update the PR?