HP3456a revisited

All new and improved:
- using the new write_only property factories, 
- gi_gpib timeout property
- rescale units when needed
- sphinx love applied

Let me know if any warts remain!
Whoops. We are both wrong here...it should be a combination of the two

```pypthon
self._file.timeout = newval.rescale(pq.second).magnitude # Adjust downstream connection timeout
self._timeout = newval.rescale(pq.second)
```
This is so we store it, as well as change the downstream communicator to have the correct timeout. Otherwise your physical connection could timeout before your GPIB layer does. Ideally all communicators will respect units, but since at this very moment they do not, the extra `.magnitude` is needed.