Originally, I do not believe that there is one soul mate for every soul, meaning they go in pairs and you spend your entire life looking for the other half.
What I do believe in, is that your partner or your best friend could very well be "perfect" for you and thus your soulmate in that sense.
To answer the second question; yes, I think I have found both of them. I say both, because I agree that your partner or spouse does not necessarily have to be your soulmate, but I feel he is. Not fate, not karma, not meant to be - but we are fantastic together and I do not think there is a better match for me or him out there.
The second one is my best friend. We started off with a very weird meeting but both took the time to get to know each other and decipher the truth from the lies, and we became best friends ever since.
What I would describe as a soul mate, is a person with whom you have many things in common, yet have enough differences to keep broadening your window on the world. People who respect each other, love each other simply for who they are and would never deny a challenge but would work together, stand strong and face every difficulty in life together. A person who does not need more than a simple look to understand what you are saying; who does not need more than a simple hug to know you will always be there for them. And last but not least: a true soul mate loves you for who you are, warts and all - and you love them equally.