Merge the conflict with Harry's file
Add database query and sql formatting interface and related abstract classes