Improving the dynamics of the "system-wide installation" query

Here I propose two changes to how the "system-wide installation" query should work.
First: I presume most users are familiar with pressing <enter> after a [Y/n] query on the terminal. By limiting the number of chars processed by the read command, anything the user presses will be evaluated by the succeeding "read" commands. In my case, I typed <enter> after the y, and the "By default basil will send anonymous usage and crash (...)" query received this command. I personally didn't mind, but it might not be the choice of another user.

Second change: the query should be strict about only accepting "y" or "n", repeating itself should the user mistype his choice.