FlexiGPT: Pruning and Extending Large Language Models with Low-Rank Weight Sharing