[MRG] Fix startproject project name

#434 fixes.

> Add project name validation
Although writing to stdout can be considered a side-effect, setting `self.exitcode` here looks bad to me. the exitcode should be set by the caller instead.