BTW: For flat shading on surfaces, your faces must be unwelded at edges. Shaders interpolate the normals of vertices, which will give you strange lighting when the vertices meet at a corner (such as your building).
You should unweld the faces where there should not be a smooth lighting between faces. I hope I've explained this well...