Refactored instrument classes.

All instrument classes now initialize with keyword arguments only.

Instrument classes now implement the make-new protocol.