Split classes into multiple files
Update tests