Changed Connection class to Trait

MySQLConnection is now a trait to allow previously inheriting classes to
more freely extend base classes. Made other minor improvements to
program structure. Still need to decide on model properties.