Semi-WIP: Merged upstream, fixes on Piece logic.

This commit represents a lot of work on the Piece model; lots of generalizable
piece logic has been moved onto Piece, tests have been written for existing
functionality, and lots of existing but broken functionality has been fixed.
Clarified test boilerplate block
Merge remote-tracking branch 'upstream/dev-no-board' into dev-no-board

Conflicts:
	app/public/js/models/Queen.js
	app/public/js/require-config.js
	spec/specs/clientSpec.js
Fixed some upstream incompatibilities; tests do not run at present
Merge pull request #17 from ndhoule/dev-no-board

General fixes on board piece logic