improved performance and added some new features

Improved performance by various database optimisations.
Implemented the option to select what fields to search in.
Implemented the option to select what part of the activity data the api should return
Change your editor settings to DO NOT USE tabs. Check out how code diff looks here. It's advised to use 4 spaces in python code. http://legacy.python.org/dev/peps/pep-0008/#tabs-or-spaces