REFACTOR: Separate bow and visual feature extraction