Add basic support for interceptors

@JakeWharton @jhump @swankjesse 
Would these ever be `null`? We should force implementors of `Interceptor` to return an empty collection if they have nothing to contribute.