starting to split out classes