Move class into its own file

Fixes #11 

Based on code review with @jonuy, moved class into it's own file.