Small refactor.
Simplify callback logic.
Better naming; add curlies.
Move defaults to the top; better naming.
Better structure for return data.
Better method names.
Better param name.
Make parse function configurable.