Support more complex request hash data model

Make gem support more complex request hash data, for example,  {event_id: 1, registrations: [{ reg_name: 'Steve Jobs', avator: File.new('xxx.png')}, { reg_name: 'Holly Green', avator: File.new('yyy.png')}]}.