Hi Sovanna,
actually the error message is very clear in stating that [b]duplicate names are not allowed[/b].
This may be slightly cryptic but it basically means that you either have declared the [b]same quantity twice[/b] (in two different classes that now, in your new hierarchy are dependent, i.e. one inherits from the other one); or you have used the [b]same name for two different objects[/b] (interface variable, parameter or state variable).
If this should not ring a bell (you may have an idea of which quantity may be involved?) then the only was is to patiently debug your library, by including one class at a time, commenting out chunks of code, etc.
I am not entirely sure what you are trying to achieve though ... you say "a new Category, called PSVDM" but: is that truly a Conversion Model (a secondary CategoryRef in the scope on an existing Instance), or rather a new Instance? Why are you duplicating the "sewer.base.msl" file - is this really necessary?