fix jsonfield in the base class can not decode correctly bug

In [Issue 106](https://github.com/bradjasper/django-jsonfield/issues/106), I give a case that json field in the base class, but it can't be decoded when derive class get it instead of string(or Unicode).

I read your source code(be honest, I learn django in one month, many code I still can't understand) and clone it, I try to modify some functions to test their function. I found if I can use django raw to_python function it try to decode string or do something(In a word, **I want to decode any string if I can**). So I modify code here. :)

Btw, I found there is a tests.py file here, but I don't know how to run it to test my new version jsonfield. So I just create some class like Issue 106, do some `save()` and getting fields, it work correctly! At least I can use this code in my project.