Add some better documentation