User selector update to make it clearable

Made the single user selector clearable to make it consistent with the multi user selector and the image selector.  Also fixed a problem with only one ccm_triggerSelectUser ever being accepted.  If you passed in a custom javascript function it would either never be used it or only be used for all user selector instances on the page.

To illustrate the problem:

$user_selector->selectUser('field1');
$user_selector->selectUser('field2',null,'doSomething');

the old generated javascript:

user selector 1: 
ccm_triggerSelectUser = function(uID, uName, uEmail) {
   …
}

user selector 2:
ccm_triggerSelectUser = function(uID, uName, uEmail) {
	doSomething(uID, uName);
}

ccm_triggerSelectUser has been overwritten at the window level, the first triggerSelectUser will never get called.
Updated attribute key insert id 

When using the mysqli adodb driver (which I use for transactional
 support), you can't have any queries between an insertion and a request for
 the insert id or adodb will return 0.
Merge pull request #1390 from ceko/master

These are two small quality of life changes I've made to my local Concrete5 fork