Ability to Transpose data in Shiftr.

Ability to Transpose data in Shiftr.

 - Added to the '@' wildcard functionality to allow for "down the tree" data lookup.
 - Example :
   "data" : {
     "@value" : "@key"
   }
   This will pull values from the "data" Map, from the "key" and "value" keys.
 - Complex paths after the '@' can be embedded in a parenthesis
   - Example : "@(path.to.data.down.the[2].tree.&(1,1))"
 - Note : The "path" after an '@' can not contain any '*' wildcards.

 - Cleaned up the Parsing of PathElements for Shiftr.