api: allow lambda tables to be user-specified via a text file

This change allows easy experimentation with the lambda tables. One can
cut-paste the existing tables from TComRom.cpp into a text file and hash(#)
comment the C constructs (variable names and braces) and arrive at a functional
lambda file, then edit to taste.
simplify: getLumaIntraDir()[x] -> getLumaIntraDir(x)
lambda-file: detect and report if lamda file containts too many values

It seems likely that this is an unintended error the user would want to be
made aware of.
lamba-file: make improper number of constants a fatal error

Having an invalid set of lambdas is likelty to be completely useless
param: avoid spurious gcc warning about toksave possibly being uninitialized
frameencoder: match up integer argument types to avoid MSVC warning

The prototype in the WaveFront base class was:
   virtual void processRow(int row, int threadId) = 0;

Some versions of MSVC flag this as a warning
ratecontrol: fix cast of cutree offset, avoids MSVC warning
param: avoid spurious MSVC warning about buf being possibly uninitialized
encoder: avoid int64_t to int conversions, avoid more MSVC warnings
y4m: avoid implicit size_t to int conversion, avoid more MSVC warnings
lambda-file: file close before return
frameencoder: remove warning about ambiguous pow function
avoid VS2008 and MinGW ambiguous pow() build warning