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.