Fixes #291
Use $.prop() to get "multiple" attribute

The string 
opts.element.attr("multiple") 
returns:
1) string "multiple" - if element have attribute multiple (<select name="..." multiple></select>)
2) undefined - if element have not attribute multiple (<select name="..."></select>)
It is written in the documentation:
"As of jQuery 1.6, the .attr() method returns undefined for attributes that have not been set."
"To retrieve and change DOM properties, use the .prop() method."
(http://api.jquery.com/attr/)

I am propose use "prop" function. The string
opts.element.prop("multiple")
returns:
1) boolean "true" - if element have attribute multiple
2) boolean "false" - if element have not attribute multiple

After, the "multiple" variable use in check of the condition:
select2 = multiple ? new MultiSelect2() : new SingleSelect2();
Better use true/false variable value than "multiple"/undefined in this condition.

Tested in Opera 12 and IE 8.0.7601
fix initSelection with empty input value
Merge pull request #1073 from norlin/master

Fix initSelection method with empty input value
Merge pull request #979 from mynameistechno/master

Fixes #291
Fix tabindexing

Actually set tabindex on the select2-focusser for focussing on tab
navigation

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
fix tabindex for both multi and single. fixes #1169
Update select2.js

See #1175 - fixed typo introduced in last commit
Merge pull request #1176 from hoopyfrood/master

Removed typo (extra character)
Macedonian locale added
Merge pull request #1177 from psybaron/master

Macedonian Locale Added
applied fix for #1172 - Clear button overlaps text
Array data with custom key (string) isn't returning matches. fixes #1179
Remove inline styles
Merge pull request #1180 from rice/bug/remove-inline-styles

Remove inline styles
do not propagate change event from the search field out of the component. fixes #1178
Revert "applied fix for #1172 - Clear button overlaps text"

This reverts commit fd07c11484caf2f515f17edfbb576b2b28f2366f.
Fix #1172 -- Properly set width when allowClear is being used.

Signed-off-by: Igor Vaynberg <igor.vaynberg@gmail.com>
Allow overriding jquery's automatic cache-busting on ajax calls

By default jQuery (and Select2) add parameters to ajax calls, to invalidate browser caching. In certain circumstances its useful to disable this (eg when server sets good Cache-Control headers), this patch allows passing the cache/jsonpCallback params though to jquery's ajax function.
Bugfix for Resetting Scrollpoint on Multi-select

Duplicating pull request #974 - which seemed to only fix it for 'single' version. Have copied the same condition into the one for 'multi' case. There may be a better way, but in my testing this seems to have worked.