I'm not sure if this is intentional or not, but right now you can only select text in an input control using the mouse, even with the directional macros removed. In most text boxes, you can select text by holding the shift key and then pressing one of the arrow keys. Would this be possible to add for BYOND skins?
Also, input controls are annoying in how they handle double quotes. Right now, the best option (other than maybe using client/Command or browser interfaces) for input controls that execute one specific verb is to set the input's command property to something like say . The problem with this is that if the player hits the space bar right away, then a double quote appears at the start of the text box instead of a space. If the first character typed is a double quote, then if another double quote ever appears, then spaces typed by the user are filtered out by BYOND and when they hit enter, the say verb won't be called but instead be replaced by a 'Sorry, the following is not valid' error. Setting the control's command parameter to say " will fix the first problem, but cause any double quotes with at all with text after them to trigger an error. Finally, using the no-command property might fix this entirely, but then the user can't hit enter to submit the text (if a macro has been set for the enter key, it isn't run when an input control has focus).
One more request: could Click() and DblClick() be called for a couple controls other than maps, grids, and statpanels? Specifically, it would be nice to be able to close a tab when the user middle clicks it.

It's not quite the input controls themselves.
Ah, thing is, those are all not problems, on the contrary. That's simply how text arguments work in commands; they have to be designated as text, or DS has no way to know that they're meant to be text.
What you want here just isn't an argument using the text input type, which, like most other input types, is specially parsed from the command into a value. In this case you wants to freely let the player type whatever he wants, with no parsing or special handling; this is what the command_text input type for. An argument using it just directly receives all the command text (surprise) given once it's reached, without any parsing.
Note that no interface control can be clicked at the moment (although in some HTML-supporting controls, you utilize a hyperlink and Topic()). Only atoms themselves can be clicked.
The mouse procs are currently atom-exclusive and have atom-based versions; it would be best to implement interface mouse control separately (if it would even be through procs), keeping the current mouse procs' nature as it is. This separation would not only will keep the behavior of old code intact and unbroken, but be generally more efficient and more convenient most of the time.