Unit tests for Firebolt.param()

Taken from jQuery and modified (a lot) to fit how Firebolt serializes objects (the main differences being arrays get serialized with numbered indexes and %20 is used instead of +).
Fixed Firebolt.param() to pass new unit tests