For Naming
The new system you mentioned, is ONLY used for ionic substances, and replaces as you say the old ferric/ferrous system. Note also, that eihter of these systems is only needed for atoms that can exist with more than on oxidation number so basically the transition metals.
I'll explain the new system by an example: Fe2O3 . So start by naming the metal, in this case iron. Then you have to figure out the oxidation number of the iron in the compound. You know that oxygen is almost always has oxidation number of -2. (Except in peroxides, in which it is -1). Anyway, so O is -2, and there are 3 of them, which gives a imaginary charge of -2*3= -6 coming from the oxygen. Since the whole compound is neutral, the -6 must be neutralized by the iron. So -6 / 2 = +3. There fore the oxidation number on the iron is +3. Once you have the oxidation number on the metal you put it as roman numerals in brackets, without a space: iron(III)
Now just put the non-metal part in: iron(III) oxide.
Similarily CuSO4 is copper(II) sulfate, because the oxidation of copper is +2.
For hydrates such as, CuSO4 · 5H2O, you must also name the water part. Just do this by using the greek prefixes: mono, di, tri, tetra, penta, etc. So CuSO4 · 5H2O is copper(II) sulfate pentahydrate.
Solubility in Water
There are rules for these you will just have to memorize. The rules do have some logic to them, but memorizing is just easier. Here is a site with the rules.
http://www.chem.sc.edu/faculty/morgan/resources/solubility/