Modify to py.test running by 'python setup.py test' and add test dependencies
Add match_columns
Split tests to functional test and unit test.
Add .travis.yml