Some abstract critical point theorems and applications