Improve dic fall back

1. add field rawDataByte size to store the size of the data in plain encoding. Therefore we don't always rely on plainWriter to get the size

2. in writeXX method of each DictionaryValuesWriter, use EITHER dictionary writer OR plain writer, not both.

3. added method fallBackDictionaryEncodedData to decode the encoded data when fallback happens