Extract reusable functions into webdevutils package

This removes some of the validation logic from the main package for
`staticserve` to a more reusable package that can be shared independently of
the packaged command-line tools.
Initial cut of autocompile command