3.0 select

Part of #2267. This set of changes updates the select() method in FormHelper. I've not addressed multiple checkbox yet as I felt that might make this set of changes harder to review. I'll do checkbox multiple next.