Fix. Propagate error from reader.

```lua
function reader() return nil, "some error" end
local ok, err = arc:write('test.txt', fileDesc, reader)
assert(ok == nil)
assert(err == "some error")
-- !!! But zip archive contain test.txt file with zero size
```
Fix. `platform` field supports values not only Windows/Unix.
Fix. Try use global name `alien` if module loader does not return any.
This is not confirmed bug.
Add. coveralls.io service.
Add. coveralls.io budge.
Fix. Convert source to UTF-8.
Run AesFileEncrypt self_test.
Change. Allows `exattrib` field be array of flag (See #3)
Add. Flags to make `exattrib` on Unix/Fat32.

Still it is very verbose.
```Lua
-- make attr for `-rw-r-----` on Unix
local desc = {
    platform = 'unix',
    exattrib = {
      ZipWriter.NIX_FILE_ATTR.IFREG,
      ZipWriter.NIX_FILE_ATTR.IRUSR,
      ZipWriter.NIX_FILE_ATTR.IWUSR,
      ZipWriter.NIX_FILE_ATTR.IRGRP,
      ZipWriter.DOS_FILE_ATTR.ARCH,
    },
}
```
Also because NIX_FILE_ATTR `lshifted` to 16 you can not use directly value from `chmod` function.
Update Travis file.
Update LuaRocks version on Travis test
Update ZipWriter.lua