implement Detect

Closes #1.
I took the text directly from https://www.mozilla.org/MPL/headers/ but I guess it's just a minor detail. So, I think it's fine.