Most indie dev teams essentially do run themselves as a non-profit during the development process; they minimize their costs and spend all their available funds on making the game as good as possible. The part that comes when they run out of money and release the game is where any profit happens!