BUG: pandas Timestamp tz_localize and tz_convert do not preserve `freq` attribute
The `pandas.Timestamp.tz_localize()` and `pandas.Timestamp.tz_convert()` methods do not preserve the `freq` attribute.  For background, the `freq` attribute is mostly a "helpful label", and it seems semantically ill-defined to me; cf. issue #15146, which proposes removing the attribute.

#### Code Sample

```
>>> import pandas
>>> import pytz

>>> t1 = pandas.Timestamp('2019-01-01 10:00', freq='H')
>>> print(t1.tz_localize(pytz.utc).freq)  
None

>>> t2 = pandas.Timestamp('2019-01-02 12:00', tz=pytz.utc, freq='T')
>>> print(t2.tz_convert(pytz.utc).freq)
None
```

#### Problem description
I don't think that `pandas.Timestamp` should actually have a `freq` attribute, but so long as it does, it should be propagated to the new timestamp value returned by `tz_localize()` or `tz_convert`.  In the `tz_convert` case, the method should produce an "equivalent" timestamp with a different tz.

#### Expected Output

`t1.tz_localize(pytz.utc).freq` should equal `t1.freq`, and `t2.tz_convert(pytz.utc).freq` should equal `t2.freq`.

#### Output of ``pd.show_versions()``

<details>

No module named 'dask'

INSTALLED VERSIONS
------------------
commit: 04df22fbeec782f474bcff20480eded04e0d1d82
python: 3.7.2.final.0
python-bits: 64
OS: Darwin
OS-release: 17.7.0
machine: x86_64
processor: i386
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8

pandas: 0.25.0.dev0+89.g04df22fbe
pytest: 4.2.0
pip: 19.0.1
setuptools: 40.7.3
Cython: 0.29.4
numpy: 1.15.4
scipy: 1.2.0
pyarrow: 0.11.1
xarray: 0.11.0
IPython: 7.2.0
sphinx: 1.8.4
patsy: 0.5.1
dateutil: 2.7.5
pytz: 2018.9
blosc: None
bottleneck: 1.2.1
tables: 3.4.4
numexpr: 2.6.9
feather: None
matplotlib: 3.0.2
openpyxl: 2.5.14
xlrd: 1.2.0
xlwt: 1.3.0
xlsxwriter: 1.1.2
lxml.etree: 4.3.0
bs4: 4.7.1
html5lib: 1.0.1
sqlalchemy: 1.2.17
pymysql: 0.9.3
psycopg2: None
jinja2: 2.10
s3fs: 0.2.0
fastparquet: 0.2.1
pandas_gbq: None
pandas_datareader: None
gcsfs: 0.1.2

</details>
