add automatic hash function creation

Since this is my first contribution to boost, please check if the copyright notices and documentation are up to par.  Thanks!