http://www.salesforce.com/developer/docs/api/Content/sforce_api_calls_sendemail.htm states that several fields, including toAddresses, accept arrays of values. in SOAP XML, this translates to multiple <p:toAddresses /> elements.
In pyforce.py _doPrep, there exists a joining of list items, which results in multiple items concatenated in a single element instead of multiple elements.
else:
field_dict[k] = ";".join(v)