UTF8ではエンコーディングの最小単位が1バイトなので、エンディアンを気にしなくて良い。 UTF16,UTF32は最小単位が2バイト以上なので、そのバイト列が昇順なのか降順なのかが大事。 Unicode公式ではUTF8ではBOMは付けないことをおすすめされている。
でも、エクセルはBOM無しだと文字化けするんだよなぁ。。エクセル対応のためだけにBOM付けるのいやだ。。 BOMを付けると、pythonでテキストを開くときにencodingをutf_8_sigにしないといけない。。めんどい。。
参考:
http://www.unicode.org/versions/Unicode5.0.0/ch02.pdf
UTF8の中身について書かれていてわかりやすかったです。