[idl-generator] Add support for Dictionary

1) add support for dictionary.
2) add support for multiple idl files(one definition per file).
3) add code in idl_demo for demonstrating how to use dictionary.
I wonder if it is safe to remove code here.
You can try to see if `onEvent()` is still working.