Split interface and pipeline into two files.