Billiards, geometry, and symbolic coding