Fix a lot of problems in the parse function

Since it's confusing dealing with both `advanced` and... let's say `traditional` links, I've split the handling of each into separate functions. Also there's a lot of other little changes. 
Certainly not. You will pass an integer to `JCategories::get` or your will pass 'root' (but we don't want to do that here), you will not pass some alias.