Question 2 was already answered in reply #1

For question 1 you need to go and read the websites of the developers.
What functions/options/features each one has is explained on them.