More Pythonic code & Python 2 / Python 3 full compatibility & PEP-8 styled format

More Pythonic code & Python 2 / Python 3 full compatibility & PEP-8 styled format

I have replaced all `str1 + '.' + str2 + '.' + str3` to `'.'.join([str1, str2, str3])`. So it is faster a lot and encouraged.

`md5` library is replaced by `hashlib` since Python 2.5. I have performed this transaction.

The code can now run under Python 2 (>=2.5) and Python 3 (>=3.0), which handle `urllib` library and Unicode strings differently, and perform `int1/int2` with different rounding method.

I have also formatted your code according to the Python official guideline (PEP-8). If you dislike it, you can revert that single commit.