Add solution to qualify round A
Add Qualify problem B solution
Merge branch 'master' into qualify

* master:
  Update tools
Merge branch 'qualify'

* qualify:
  Add Qualify problem B solution
  Add solution to qualify round A

These are the answers as submitted to GCJ.

I wrote the solution to A before I had written the CaseInput struct, so
a lot of the code is just input, type conversion and validation. The
actual solution is on the EvaluateCase function, which could have been
even shorter if it also didn't do some validation.

The solution to B just calculates the marginal cost and benefit of each
farm and buys farms until there is no more marginal gain. It was correct
on the sample and small datasets, hopefully also correct on the large
dataset. It is much cleaner since it uses the CaseInput struct.

I was too lazy to work on C and D; naive solutions to C break in some
corner cases (e.g. pinning click to corner will always break on
even-sized board with some certain odd mine counts), and I was too lazy
to think of / implement a better one. I didn't even finish reading all
of D's description >_>