Option ordering, async blur handling

Hey there

Made a few more changes that you might be interested in.

(1) When rendering options, retains option ordering rather than pushing options into a map by their value.  This was causing options to be rendered sorted by their value, not their original ordering, which is incorrect.
(2) getStateFromValue was failing to retrieve the correct option when the options are async, because the options are in this.state.options, not this.props.options.

Cheers!
Kyle