AppendLink() now also accepts Func<string>
removed concept of checking if object has already been described - this didn't work well in current implementation. For now maxDepth provides enough security to avoid StackOverflow exceptions.
added ability to specify resource type