facets: support for dots in keys and any nesting level

This fixes the case in which keys include dots. There is also support
for any nesting level and keys representing array values can be
placed anywhere in the dotted notation.

considering
obj = {
    club: {
        name: 'Golf Pros',
        'honorific.members': [
          {name: {firstname: "Tiger", lastname: "Woods"}},
          {name: {firstname: "Thomas", lastname: "Bjorn"}}
    }
}

you can now add facets as 'club.honorific.members.name.lastname'
added qunit for testing
added unit tests for getvalue using dotted notation