With all respect, I think your system is not defined with enough detail. If you describe the process sequentially with enough detail you will see it's flawed.
Two candidates A and B
1) User c with addC commits A's vote for A.
How the organization decides that is c (and not another voter) the one who has to commit that vote?
How the organization knows addC belongs to c?
You may be correct but I think I can explain the two points you have raised.
First point is that the organization doesn't decide who commits the vote - that is effectively a random decision. The organization doesn't need (nor would you want them to know) that it was A's vote but only that a valid vote was received by the party.
2) Now user c can vote. He sends his vote to d (who will know his vote, by the way) for d to commit it.
How c knows that he has to send his vote to d and not, for example e?
How does the system warranties that d doesn't change c's vote before committing it?
The ballot would be encrypted with a secret batch key (known only to each party and to the organizers with there being perhaps 1 of a possible fairly low percentage of the total number of registered voters) so there is is only a fairly low percentage of chance (the percentage chosen) that you can decrypt a vote, however, if you make sure that the user you first send your vote to does not belong to your own batch (by having a non-encrypted batch # that all can see) then subsequent users might be able to decrypt the vote but they now would not know whose vote it was (as your identity has disappeared during the relay).
To prevent tampering the rule would be that a vote submitted to a party that belongs to the same batch # as the user sending it would be relayed back to its sender (I guess this might be a slight flaw in that the small percentage of chance you have of receiving a ballot from another user from the same batch could give you an opportunity to change that vote).
If the sequencing between voters is public and the votes themselves are public, everything is public.
Each ballot (whether the initial one sent to the user, one relayed between users or the final one delivered as a vote) would be public key encrypted to the destination user and the actual vote is encrypted with the batch key so no nothing is public apart the fact the tx's were sent between users.
If the votes aren't public and the organizers must sum the votes, the system is not decentralized.
The receipts provide the final way that anyone can count the votes. The role of the organizer is to simply verify that the parties have only created receipts for valid votes (by checking each vote with the secret batch key).
I am not sure whether or not I have nailed it yet but hopefully these points will convince you that my approach is not completely flawed.
Cheers,
Ian.