Make synchronization service extendable, update userprojects model

also add javadoc to the models please.