Modularize

Move code into separate files in order to clean the code and make
Analyser modular and potentially exchangeable in order to add support
for multiple databases