build: support building multiple binaries

Rather than assuming all sources will go into one binary, support
multiple binaries for the future.