text: Title: If multiple keywords match, resolve conflict first using search order
  Body: The changes for fixing issue #4366 changed the `Set Library Search Order` functionality in a way that it cannot be used to force keywords to be used from imported resources if a keyword with same name exists in the importing resource file (or a testsuite in the future version?)
  
  We have an old library (develop originally for RF 3.0) that enable us to created mocked user keywords to be used in user keyword “unit tests”. With this we can replace some of the user keywords (in the same resource file or testsuite) in a user keyword under test with a mocks and only concentrate on the functionality on that keyword. Just the default unit test approaches.
  
  Now that local keywords cannot be overridden from the imported resource files, even using Set Library Search Order, this approach has now become impossible.
  
  Related issue.
  BuiltIn library does not have keyword for getting currently set search order. This is a bit inconvenient for our library.  Fake keywords (and implementing resources/libraries) can be set in different stages, so it is a bit hard to keep track of currently active search order. It would be lot easier if it could be asked from robot itself.
  
  I guess `Set Library Search Order` could be called with some dummy value (or None) to get the current value and then set it back (maybe with some modification) but it would look a bit cumbersome.
  (In the original implementation we are using internals from BuiltIn to get this information but this is definitely not something that should be done)
  