Unification via Explicit Substitutions: The Case of Higher-Order Patterns