updated so that objects are default unless [] are empty and updated test...

updated so that objects are default unless [] are empty and updated tests to verify it works

Basically the point of this is to make it work more like PHP and Rails.  

Items[1]=on&items[4]=on

will now become:
{ items: { 1: on, 4: on } }

rather than
{ items: [on, on] }

Updated tests to make sure that it didn't mess up even when [] and [99999] was used.

items[]=on&items[]=on will still equal { items: [on, on] }