It is now possible for same sex marriage couples to apply for a green card.
However, the couple must be married in a state inside the US that recognizes same sex marriage, for example Massachusetts, New York, Iowa or California. Another option is to be married in a foreign country such as Canada that recognizes same sex marriage.
What this means is that a US citizen spouse can now file for a green card for the same sex spouse. The green card process is still very complicated and it is best to consult an immigration attorney. US citizens can file the I-130 and 1-485 together. So unlawful presence can be forgiven if the foreign national spouse entered the country legally and is married to a US citizen.
Green card holders can also marry but they have to wait for the green card visa to become available depending on the visa bulletin.