[#877] Added app id validation to match SBT 0.12

The major change here is to add validation to the app id.  SBT 0.12 introduced doing project ID validation earlier in the process.  Play projects previously could often get away with having invalid project IDs, but now they can't.  For a discussion on this, see here:

https://groups.google.com/d/topic/simple-build-tool/G7BpJFqZK9g/discussion

This will validate the project ID, and reprompt the user in a loop if they enter an invalid ID.

Also I fixed a bug (or rather, worked around a jline limitation) where if you tried to delete the default name, all the rendering stuffed up and the prompt disappeared etc.  I searched the jline code hard to work out if we can have the name as the default text for the buffer after the prompt, but a few bugs or limitations prevent us from doing this nicely, so instead I've placed the default name in square brackets after the question.