Add an evaluation function

This function can be used in a tree search to determine if a move
is good or bad.

This version of eval measures the activity of the king compared
to the remaining material of the opponent.
Add a material score ratio

It tends to be a decisive advantage when a player can gain a
material advantage. This must be balanced in the end by other
factors, such as initiative and attack pressure.
Add an attack ratio

Compare the attack of both players and improve the score when
own attack is greater than opponent attack.
Explain what eval is used for
Move eval inside of Board

Had to also move the bitboard helper functions to make const work.
Factor out the evaluation weights

This was the reason eval was brought inside of Board in the
previous commit.
Merge pull request #54 from joichiro/eval

This is a good-enough first version of an evaluation function to prototype a tree search implementation. The structure EvalWeights will need to be trimmed down as much as possible as it is very heavy.