Update base.html to load static files, have a title, and place the header inside the replaceable block
Update chessfellows/urls.py to fix regex for urls included from chess/urls.py
Resolving merge conflicts betwee front-end and engine to bring engine up to date
Add engine.py to contain the chess game engine
Add _coord_to_algebraic() and _algebraic_to_coord() to convert positions between (x, y) coords and 'a1' algebraic chess notation
Add _is_pos_on_board() to determine if a position is on the board
Add Piece() to serve as the parent class for all chess pieces
Add SimpleUnit(Piece) to test simple movement, capture, etc.
Add Piece.move() to update a board with a piece movement if it's valid
Refactor coord/algebraic converstions from functions to dictionaries
Add test_engine.py with valid and invalid coordinates and tests for _coord_to_a1 dictionary
Add test_a1_to_coord() to assert that only valid board coordinates are in teh _a1_to_coord dictionary
Add move() to move a unit from one location to another
Add test_is_coord_on_board() to assert the function returns True if the coordinate is on the board and False otherwise
Add Match() to engine.py with .move() to move piece, _create_blank_board() and _add_simple_units(). Also added a if __name__ == __main__ block
Add test_instantiate_Piece() and test_instantiate_SimpleUnit() to assert that the respective classes instantiate with the expted attributes
Update docstrings for test functions
Add test_SimpleUnit_possible_moves_empty_space() to assert that only valid moves are returned
Add test_SimpleUnit_possible_moves_into_ally_space() to Assert moves into allied units are not considered valid.
Add test_SimpleUnit_possible_moves_off_board() to assert that moves off the board are not in returned move list.