**Changes:**
- New features in `Line.twiss`:
- Initial conditions can be provided at any point in the selected range.
- Initial conditions can be provided as keyword arguments, e.g. `line.twiss(ele_start='ip8', ele_stop='ip2', ele_init='ip1', betx=1., bety=2.)`.
- Twiss range can extend across the end of the line (useful to avoid unnecessary line cycle).
- `ele_co_search` can be provided to periodic twiss to perform the closed orbit search at a given point in the line (instead of start line). Useful to avoid failures when large orbit bumps extend across the start of the line.