Refactored classes into different files, added a behavior class!