Adds bill of materials parser

Resolves #3