Arghh, it lost my long post - let's write it all up again...
I think I see what you are getting at. The definition of a simplicial complex, as it stands on wiki, seems to me to be very strict. We require that the faces of the simplices not only "match up" but "are the same" whenever they overlap.
Now, in the definition of the singular chain complex, there is nothing to say that for any given σ, the chain -σ is equal to σ with the opposite orientation. For example, if we take the chain given by σ:[0,1]->[0,1], σ(t)=t, there is nothing in the definition of the singular chain complex which says that -σ = σ' where σ' is the map σ':[0,1]->[0,1], σ'(t)=1-t.
However, the following probably can be said: [(-1)^n]σ'
is homologous to σ where σ' is given by a reordering of vertices with sign n.
Hence, it seems to me that we arrive at this point: we can either think of σ with a negative orientation and -σ to be different in the chain complex, which means we will require a much stricter version of a simplicial complex (and probably require a finer triangulation), or we can acknowledge that they will end up being homologous and work in the chain complex where they are identified (in fact, we may like to identify more than just these to make things even easier on ourselves).
You should just view the simplicial chain complex as being a subcomplex of the singular chain complex, where this inclusion is a quasi-isormorphism. Of course, the correct statement of this depends on the above - we may want to work with the chain complex where -σ and σ with the negative orientation are already identified. But in the end, we should still get quasi-isomorphisms and the same homology and everything should follow smoothly.
Also the cochains are the same as the chains. there are no homomorphisms of chains into the integers as in singular cohomology. There is a single graded group of ordered simplices made into a chain complex in two ways - one with the boundary operator, the other with its transpose.
I didn't follow this - the cochains of the simplicial cochain complex are still homomorphisms of chains into the integers (or other coefficient group) - this is how they are defined! The only difference now is that, in most cases, we now are working with a finitely generated module where the dual will be isomorphic to the original with the obvious identification. Taking the transpose maps gives precisely the cochain complex.
We know this is the right cochain complex - for example, the UCT says that the homology determines the cohomology. If we accept that the simplicial homology is isomorphic to the singular homology, then their cohomology must also be the same, so indeed taking the transpose maps and then taking homology gives us precisely the singular cohomology.