Broke functionality out into separate files
Added an entry point
Fixed typo