Repository: mne-tools/mne-python

Issue:
Implement Topoplot Layout for 160-channel Yokogawa KIT MEG System 
A couple of people in our lab (https://www.cogsci.mq.edu.au/facilities/meg/) are starting to use MNE for BIDS data storage and analysis. We have a 160-channel Yokogawa KIT MEG System.

Data loads perfectly using mne.io.read_raw_kit. When trying to produce a topoplot after averaging I get the following error:

```matlab
"NotImplementedError: The layout for the KIT system with ID 345 is missing. Please contact the developers about adding it."
```

@teonbrooks or others, would this be easy to implement? Thanks in advance :) Robert


Discussion:
our layouts are there:

https://github.com/mne-tools/mne-python/tree/master/mne/channels/data/layouts

do you have one for your system? maybe from another software?

We use:

```matlab
cfg             = [];
cfg.grad        = alldata.grad;
lay             = ft_prepare_layout(cfg, alldata);
```
... which creates a variable with position information.

In MNE layouts (e.g. KIT-157.lout) what do the columns represent? I'll have a go at creating one for our system.
I *think* the first line is `x_l, x_r, y_b, y_t` for the box that contains sensors, one per following line, each with def `id, x, y, w, h, ch_name`. At least that's what seems to be implied here:

https://github.com/mne-tools/mne-python/blob/master/mne/channels/layout.py#L116

Resolving patch:
diff --git a/mne/channels/layout.py b/mne/channels/layout.py
--- a/mne/channels/layout.py
+++ b/mne/channels/layout.py
@@ -460,7 +460,7 @@ def _find_kit_layout(info, n_grads):
     Returns
     -------
     kit_layout : str
-        One of 'KIT-AD', 'KIT-157' or 'KIT-UMD'.
+        One of 'KIT-AD', 'KIT-157', 'KIT-160', or 'KIT-UMD'.
     """
     if info['kit_system_id'] is not None:
         # avoid circular import
@@ -473,6 +473,9 @@ def _find_kit_layout(info, n_grads):
         raise NotImplementedError("The layout for the KIT system with ID %i "
                                   "is missing. Please contact the developers "
                                   "about adding it." % info['kit_system_id'])
+    elif n_grads == 160:
+        return 'KIT-160'
+
     elif n_grads > 157:
         return 'KIT-AD'
 
diff --git a/mne/io/kit/constants.py b/mne/io/kit/constants.py
--- a/mne/io/kit/constants.py
+++ b/mne/io/kit/constants.py
@@ -133,6 +133,7 @@
 # Known KIT systems
 # -----------------
 # KIT recording system is encoded in the SQD file as integer:
+KIT.SYSTEM_MQ_ADULT = 345  # Macquarie Dept of Cognitive Science, 2006 -
 KIT.SYSTEM_AS = 260  # Academia Sinica at Taiwan
 KIT.SYSTEM_AS_2008 = 261  # Academia Sinica, 2008 or 2009 -
 KIT.SYSTEM_NYU_2008 = 32  # NYU-NY, July 7, 2008 -
@@ -148,6 +149,7 @@
 KIT_LAYOUT = {
     KIT.SYSTEM_AS: None,
     KIT.SYSTEM_AS_2008: 'KIT-AS-2008',
+    KIT.SYSTEM_MQ_ADULT: 'KIT-160',
     KIT.SYSTEM_NYU_2008: 'KIT-157',
     KIT.SYSTEM_NYU_2009: 'KIT-157',
     KIT.SYSTEM_NYU_2010: 'KIT-157',
@@ -160,6 +162,7 @@
 }
 # Names displayed in the info dict description
 KIT_SYSNAMES = {
+    KIT.SYSTEM_MQ_ADULT: 'Macquarie Dept of Cognitive Science, 2006-',    
     KIT.SYSTEM_AS: 'Academia Sinica, -2008',
     KIT.SYSTEM_AS_2008: 'Academia Sinica, 2008-',
     KIT.SYSTEM_NYU_2008: 'NYU New York, 2008-9',


Test patch: