* Make our async deallocation functions take a double pointer, so we can be sure we've released before the queue drains
* Make it a class property
* Fix the return type
* Use a locker
* Improve release notes
* Implement tests for the layout flattening process
* Refactor the flattening algorithm
- Remove flattened flag
- No more self check
- Stop traversing a layout tree branch when hits a displaynode node.
- Reuse as many existing ASLayout objects as possible
* Update changelog
* Ceil position values before comparing
* Explain why sublayout elements must be retained