Import github.com/howeyc/fsnotify

Change-Id: I1f07915a39b12aca4b0b526af1a9cc0d38a73249
Add streaming handler based on fsnotify

Change-Id: I1b3172d485b52595f8cbdf2478f95953f541e0b5
Stop streaming when the file is renamed

Change-Id: Idcd5221940c0e0edff8e679f73171276bd9bc98d
Fix stream handler test teardown function

Change-Id: Iefd0420daefce9fd78b77c6a300d29f805f1019c
Open/close file in test for every write

Change-Id: I46eab1c1dafaf80e0470d61cbd9ba913c8e9d85c
Clean up max latency writer

Change-Id: Ifb7488cf5486d164fcaeabbcc91a0f40fb2ece8d
Use otherwise unused variable as loop condition

If the declare-and-assign operator is used in an inner scope it
overrides any declaration in an outer scope. Therefore, using "ok" as
both loop condition and as receive check is ambiguous.

Change-Id: I9bb3d3ad05b0097b97e062e99f282fe428be3bc9
Make stop function idempotent

Change-Id: Ib611a76cf352eb646daddda78106e6bb63e97d1f
Add idle timeout to stream handler

Change-Id: Ib6f2a4fb9c73c64cbe2dd91ef15931194af11ef3
Hook up stream handler in directory server

Change-Id: I46556c772f5acf6aa1472fc73fe8f17bf52e04e6
Run existing tests via gocheck

Change-Id: I49f48283489b58ad8b07028eb8ca5d1355820d97
Initialize logger in log.go/log_test.go

Change-Id: I53cdd8a31de0f887e528875f7ae9c2684e02b7f4
Move helper functions to helper_test.go

Change-Id: I7e59a9240832174f6ec3c77f3f3b164fc490785c
Refactor DeaClient

The main objective for DeaClient is to translate an incoming request
into an absolute path in the filesystem that the directory server can
use to serve its client.

Change-Id: I1f380b4128f2fc5edc6c52689d1e7d56bb60ea33
Move helper function to helper_test.go

Change-Id: I85c563639a1bb743b7311b1b1e7dd0c11305cef4
Don't use hard-coded ports in tests

Change-Id: Ida77ba2ca12d58eb3337bd2debc24191dc0f7461
Add test for URL passthrough

Change-Id: I0975c1e0c78f269fb107254796716aa8eb9eb8bf
Add basic tests for max latency writer

Change-Id: I17dcd2c68a889fa6c4afef23de1dc67df0f9e75b
Fix double stop for max latency writer

Change-Id: If7f8a2a0c9c4feeabd004a1af505a2cca3ad8ffb
Use closed port in test where DEA is unreachable

A hostname can't be resolved without connectivity. An IP/port
combination cannot be relied on to be unreachable across platforms.
A port that we just closed ourselves is the most likely to be
unreachable (and quickly completes, unlike a timing out DNS lookup).

Change-Id: I463180e0191f43f72484a22ed02a10fd91ed9649