Enforce snapshot limit when publish happens

default snapshot limit 0 is in core server context.  Here in sf, there is no default.  It is optional though.  If None is given, no snapshots are trimmed.