Add CHANGELOG
Increase version to 0.5
Use unittest.main() method to execute tests

'unittest.main' is simpler and more generic than creating a custom
TestSuite and running a TestRunner on it. Also it automatically takes
care to return the correct exit status.