Introduce database for storing conversation records

Until this point chatterbot has used flat files to store statements from conversations. This pull request implements database storage which will allow several useful changes to be implemented in order to improve results.

- [x] The database setup allow all possible responses for a known statement to be queried.
- [x] The number of times for which statements occur is now being recorded. This is used to weight response results such that more common responses are chosen.
- [ ] Profiles have been created and are are used to track statements said by each user. This will be an element that can be used in the future to gauge potential sarcasm and also to return more relevant responses by making them user-specific.
- [ ] Testing has been rebuilt to account for these changes