The following question is based on this.
I am sure this is a pretty basic question but I am still at a beginners level.
I have put the following in a new environment in order to increase readability and for ease of use
\newenvironment{flowtable}[2]
{
\renewcommand\arraystretch{1.4}\arrayrulecolor{LightSteelBlue3}
\captionsetup{font=blue, labelfont=sc, labelsep=quad,
skip=0.5\baselineskip}
% header and footer information
\topcaption{#1} \label{tab:timeline}
\tablefirsthead{\toprule}
\tablehead{\multicolumn{2}{c}{\color{LightSteelBlue3}\textsc{Table \ref{tab:timeline}}, cont'd}\\[0.6ex]
\toprule}
\tablelasttail{\bottomrule}
\xentrystretch{#2} %table length, negative number means longer table, given in fraction, 0.15 means 15%
\begin{xtabular}{@{\,}r <{\hskip 2pt} !{\foo} >{\RaggedRight\arraybackslash}p{5cm}}
}
{
\end{xtabular}
}
Now I can use it as
\begin{flowtable}{My List}{-0.15}
1947 & AT\&T Bell Labs develop the idea of cellular phones\\
1968 & Xerox Palo Alto Research Centre envisage the `Dynabook'\\
1971 & Busicom `Handy-LE' Calculator\\
1973 & First mobile handset invented by Martin Cooper\\
1978 & Parker Bros.\ Merlin Computer Toy\\
\end{flowtable}
This is working. Is there a better way of doing this? How to put some default values for options and suggestion to user indicative of the purpose of the inputs?

\label{tab:timeline}looks wrong, if you use the environment more than once you will get duplicate label errors. – David Carlisle Oct 29 '16 at 18:20%at ends of lines. – David Carlisle Oct 29 '16 at 18:23