Use proxy widget to implement preedit holder

Refactor all key and IM events to go through preedit holder instead, and implement event filter in View to listen to it. This fixes IM behaviors on Gnome, but needs to be tested on Windows. My guess is it should work, though.
Fix event propagation logic

IM method events should go through the filter and reach the preedit
holder; only key press and release events need to be intercepted.
Use UTF-8 when reading from JSON backend

Fix #64

This didn't occur on Windows because I used Qt 5 on it.
Merge branch 'im_fix'

Fix #65
Save maximized state manually

Work around a Qt bug.
https://bugreports.qt-project.org/browse/QTBUG-21371

Should fix #63 but may need furthur testing. Not sure how it would work
under multi-screen environments.
Add QJson as an alternative JSON backend

Fix #66
Fix address bar update
Fix segfault when closing the last tab
Change the "Add" button to add current tab as site

Fix #34 (does not implement new tab button)
Fix README format
Update changelog for v1.0b