Make obsolete site object can be created

Per discussion, this patch makes it possible to create an obsolete
site object while the site object will be prevented from writing.
In other words, it will be a read-only site. Consequently, this 
patch solves bug 55146. Note that although obsolete
sites now become readable, they will not be in site.languages().

In addition, this patch makes pagelanglinks() return only non-obsolete
sites by default to make old scripts still functional, but it adds a
parameter to suppress this functionality.

Bug: 61120
Bug: 55146
Change-Id: I3d6ef66c369da7f0b64b821d7d78454192601839
Merge "Make obsolete site object can be created"