Basic shadow datatypes

@markhibberd @maxpow4h @etorreborre @charleso @raronson 
Explain what this means, and why it is there.