Add meta knowledge for the building (improvement) requirement type.

See patch #4977

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25717 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Fix a typo in r25715 due to confusions between many similar patches.

See gna patch #4973 & bug #22393

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25718 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Make ruleset advance sanity check, instead of exiting in the middle of the
process. Move the test if a tech requires itself, and improve it to check
if it requires it indirectly too.

See gna patch #4978

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25719 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Improve tech_upkeep in case team pooled research is enabled. tech_upkeep is
now a per-player property and calculated only on server side.

With the help of Jacob Nevins <jtn>

See gna bug #22058

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25720 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Move, rename, and rebase player_research_update() to research_update(),
taking a 'research' pointer as argument.

See gna patch #4979

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25721 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Make detached connection unable to edit. It will prevent them to receive
undesired packets when connecting when the game is in edit mode.

Reported by Jacob Nevins <jtn>

See gna bug #21468

git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25722 a0f10bec-cc02-0410-94fc-a9cfff90b4cd
Use C++11 static_assert() as FC_STATIC_ASSERT when compiling C++ code.

Reported by Emmet Hikory <persia>

See bug #22323


git-svn-id: svn://svn.gna.org/svn/freeciv/trunk@25725 a0f10bec-cc02-0410-94fc-a9cfff90b4cd