task has a channel dictionary now

Getting a task is done by looking up the name of a task the API returns
in a dictionary. Hypothetically, there should only be names in tasks
that are created through this code, not externally.

I'll worry about external channels and persisted tasks later, if ever
added physical channels dict

Devices no longer create new physical channels. Instead PhysicalChannels
are cached.
start added, sample clock type added

the daq is now taking data, can't read it yet though.