Revised version, languages added, 4 modules added