WIP:  Read Polhemus Montage

Read Montage from Polhemus Point files (following up on https://github.com/mne-tools/mne-python/issues/1703#issuecomment-67361977)

To do:
- [x] allow point names to be specified in a file
- [ ] TESTS
- [ ] update DOCs

Questions:
 - ~~Do you prefer leaving this in `io.meas_info` or would you rather move it to a dedicated `io.polhemus` module?~~
 - ~~Can it be a problem to have superfluous points in the montage? (Should I drop Nasion, LPA and RPA after using them for the transform or add them to the Montage?)~~
 - `Montage.__init__` does not check its inputs, is it only for internal use so we can assume they're safe?

The thing is I thought tuples were more efficient than lists when they don't need to be mutable, but

```
In [11]: timeit [i for i in xrange(9)]
1000000 loops, best of 3: 1.21 µs per loop

In [12]: timeit tuple(i for i in xrange(9))
1000000 loops, best of 3: 1.72 µs per loop
```