This makes `buildid_reader` usable without `nsstring`/`nserror` crates, as they rely on functions compiled into libxul. What was previously in `buildid_reader::reader` is now in `buildid_reader` (top-level), and the previous top-level of `buildid_reader` has been moved to `buildid_reader_ffi` (in the `ffi` subdirectory). Differential Revision: https://phabricator.services.mozilla.com/D237941