Added prototypes and definitions for what a lot of devices should be doing, so that they may be coded by others.