exposed getKey methods by path
refactored toString
extract addShadow into function
replaced suspicious old reference
give shadows same lookaheadSize