Bug fixes + some error handling

Missing images will be replaced by placeholders
If caption is null, do not render the caption