Finite geometry and coding theory