Use GSIs in FakeDynamo when the IndexName starts with 'gsi'.

Hello @x-ma, @giannic, @chaosgame, @sboora, 

Please review the following commits I made in branch 'jamie-gsi-with-table-hash-key-as-range-key'.

36fa3578e1fc79d1df69f9932ea67594d939f74d (2014-11-19 23:51:18 -0800)
Use GSIs in FakeDynamo when the IndexName starts with 'gsi'.

The existing FakeDynamo code doesn't make use of a GSI if the
range key of the GSI is the hash key of the table. This makes it
impossible to test queries against GSI where this is the case. As
a minimal addition, this patch explicitly uses the GSI path if
the indexName starts with 'gsi'.

R=@x-ma
R=@giannic
R=@chaosgame
R=@sboora
Could you please also add a test for this?