Make sure bs_utf{8,16}_size can fail correctly
Use new Kilim optimize_codesize option
fix bs_utf{8,16}_size and bs_put_utf{8,16}

This fixes these two instructions so they
correctly handle the full range of utf8/utf16,
including various error/edge cases.
Correctly identify FileAlreadyExists as EEXIST