Fix tail for windows os

We had to add the FILE_SHARE_DELETE flag when opening a file in go.
This is a workaround for this issue: https://codereview.appspot.com/8203043/
Linux and windows code has to be split into 2 separate files.


We encountered some problems when pooling a file that did not exist yet. When waiting for it to be created by another process, we got permission denied. This was an easy and quick fix, but I agree, it is not ideal. Do you have any suggestions ?