build lucene query from symbols

to avoid the xcontent generation/parsing overhead. So instead of 

    symbols -> xcontent -> query

now it is only:

    symbols -> query
could use instance check for Float you used elsewhere to avoid boxing/unboxing of primitive float