multiple contract source for solidity compiler: returns contract array if multiple contracts. fixes #1023