Board class refactored, error handling changed for production