fix an edge case when the synchronously loaded element itself would be a box element
add tests for asynchronous loading
moar testz