Topo plots for EEG data, even when no digitization points are present

Many EEG-only labs (including mine) don't bother with source localization and so don't mark EEG electrode locations. When plotting, relying on the approximate electrode positions reported by the cap manufacturer is good enough. In practice, this means ch['eeg_loc'] and ch['loc'] are specified, but no digitization points are present in the data. This breaks `make_eeg_layout`, which is currently very picky about which digitization points should be present. This PR makes the function a lot less picky:

 - Add flag to select which digitization points to use in
   `fit_sphere_to_headshape`. This defaults to only `FIFF.FIFFV_POINT_CARDINAL`, which was the default
   before I started messing with it in #1541. When calling the function from `make_eeg_layout`, more points
   are considered. I've noticed that Neuromag data adds `FIFF.FIFFV_POINT_EEG`, while the EDF loader adds
   `FIFF.FIFFV_POINT_EXTRA`, so it looks at both in addition to `FIFF.FIFFV_POINT_CARDINAL` landmarks.
 - Make `make_eeg_layout` still work even if no digitization points are present. Generate a warning though.
also comment on default values. yes it's a private function but if we have a doc here (which is desirable for certain functions even if they ar pivate) let's have a regular doc that looks like it should