State of the Art: Building Smart Cities Applications