Project Arduino pin use?

Hello,

I'm sorry for my bad english my mother tongue is dutch

For my school project i'm going to build a gsm system with an Arduino, and for this i'm using an arduino Uno r3 replica.
But i need to connect a 4x4 matrix, a 16x2 lcd display, a gsm shield and 2 Signales to it so do i have enough pins for this on My Arduino? I know there is a method to connect the matrix with only 1 or 2 pins. But can i connect all of this to the Arduino without this matrix method?

Thanks

This is a connection plan i found maybe this helps?

First.. I see 6 unused lines..A0..A5) - they can be used as digital I/O just like the others.
then:
There is a add on serial interface for the LCD-panel
http://www.ebay.com/itm/IIC-I2C-TWI-SPI-Serial-Interface-Board-Module-For-Arduino-1602-LCD-/370993657742?pt=LH_DefaultDomain_0&hash=item5660f1f78e
saves a few pins.
If this is not enough: use I/O extender(s)
http://www.ebay.com/itm/PCA9555D-16-Bit-I-O-Expander-I2C-for-Micro-Controllers-Arduino-w-LED-Pins-/331115310132?pt=LH_DefaultDomain_0&hash=item4d1802ac34

does cost (and pain) matter?:
http://www.ebay.com/itm/MEGA2560-R3-Control-board-ATMEGA16U2-for-Funduino-Arduino-Compatible-USB-Cable-/261320261805?pt=LH_DefaultDomain_15&hash=item3cd7e6c0ad

If you like the programming side of it, continue with UNO.

(You can even use the same set of pins to communicate with two different items using multiplexers)

You can reduce the number of pins you need on the keyboard by using charlyplexing
http://forum.arduino.cc/index.php?topic=141978.0;topicseen

You can also reduce the number of pins by using a keypad encoder, like a 74C922.

Or if you would like to pay, get my phi-panel lcd backpack that comes with 4x4 keypad connector. Just use soft serial with it. It does the lcd and keypad by itself.

You are seriously running out of pins, 6 lcd, 8 keypad, 2 sensors, gsm 2 pins, 2 pin serial, no spare pin for anything. You could also try to create your own backpack, or at least serial keypad controller, with another arduino. It's actually not hard. Just keep doing keypad.getKey() and send anything to serial port for the main arduino to see.