As a note can new parties randomly appear over time due to conditions? (E.g. espionage, economic situation) There could be a 'database' of party names (just like EU3 had a list of names for a country, e.g. John, Richard, etc. for England) to allow for random... well, yeah.
And if you want a bit more complexity, parties should be able to split, which is common among extremist third-parties and such.