Store constructors in map.

This will make creating devices easer from a configuration point of
view.

There must be an easier way of doing this...