Atom: move the variants into the constructing functions

This ensures a global coherence of the polymorphic variant names
(since the functions are used at several places) and allocates less
closures.  This is also easier to extend (passing additional
parameters requires modifications at one place instead of two).
Rss1: move the variants into the constructing functions
Rss2: move the variants into the constructing functions
Opml1: move the variants into the constructing functions