Add support for pdf data

The first draft to support initializing with PDF data. Would like to hear your feedback before moving forward.

Please let me know your thoughts regarding styling or any other convenient methods needed, etc.

Thanks