pub fn parse(source: &str, path: PathBuf) -> Result<Vec<Statement>>
Entry point: parse source into a list of Statements