Make rank and file properties
Revisions to bitboards after integration

Adjusted the design of the sliding piece fill algorithms after
performing work to integrate the functionality into Board move
generation.

 - Added friendly piece bitboard to the fill algorithms so that
   only opponent blocking pieces can be captured
 - Combined noncapture and capture into a single interface
   In particular, the template mixin to generate code for each ray
   is now more clear.
 - Added tests for each ray to make sure that opponent pieces are
   captured but friendly pieces are not.
   These tests are similar to those added from commit
   a150fefb81192b87ac9a7f9252d81d76380e3d9a to commit
   a199d0264dec68eebdb8b126a553a1d6bb98b5f8. The difference is that
   their intent is now clarified - it is not capture versus noncapture
   but rather is the blocking piece friendly or not.