Phase-change Programmable Photonics for Optical Computing and Signal Processing