Only allow one PT_INTERP ELF program header. This fixes a memory leak introduced by rS289322 (D3871). When there is more than one PT_INTERP header with an offset beyond the first page, the code would allocate interp_buf multiple times, but only free the last allocation.
Because it doesn't make sense to have multiple PT_INTERP headers, we can eliminate the problem by just enforcing that restriction.