Indeed. I am new to this sort of thing. So I'm trying my best.
The only requirement mentioned is that the server will deal with 100 GB of photos. We have no idea what it will do with them, if that's fixed or if it will grow, what the clients accessing the server need to do, if this is an internal intranet app or external internet app, if the images can be edited or deleted, how many users you need for your demo, if your clients are iOS/OS X/Windows/Linux/Android/Windows Phone/whatever, if there is a team of iOS or OS X developers or admins on staff already, etc. We have approximately no information, and people are guessing based on their assumptions and own experience.
I can clarify a bit on that. I was told I will have approximately 100GB worth of photos and growing, but slowly though. I will receive photos from astronomers collecting photos. There will be no photoshopping involvement, just some type of scoring system involved. Something like: I see a photo but I don't see what I'm looking for, I dismiss it with a zero. If I see a photo with something that I "think I see it but not sure" - score it of 1. But then if I see a photo with something that's painfully obvious, I mark it 2. And on server side, I want to collect all photos that has scores separated into group based on scores. The more 2s it is, goes into folder of that score. (To speed up searching for specific photos from 100GB worth of photos if shared among scientists). We won't be moving photos around, just putting those photos on file so we know which is which. But I also want to include accounts for each users so we also can track down who's who, who can really see well and who can't really see well, etc.
Also, for now - they want to only focus on iOS side. And once they have a working app and server, they will move on to android app. So we thought OS X Server plus xcode 6 beta would suffice. Seems wrong?
You're an intern. You've been asked to prototype some sort of photo viewing app for a large corpus of internal photos for "scientists". You have OS X server, but you don't know if that's the right tool. You need to learn a lot about what questions to ask about requirements and start asking them. Can this be browser-based? What's the monthly budget to keep it running? How available does it need to be (or: how much downtime is tolerable)? Are there performance requirements? If it has to be an app, should it appear in the App Store or only be distributed internally (this affects which dev program you should join)? What do you need to learn? How expensive it will be to build? To maintain? Is this feasible in some time frame? How many developers it will take to deliver by a certain time? Is it feasible to host this on OS X if this is internal? What if it's external? Do you or the firm have the expertise to secure this app, if security matters (hint: it does)?
I was hired to solve this and try and provide a demo so that they could test, evaluate its functionality (and not on appearance), and then fund for next intern job to make this better. And I know security matters.

I just know that this is not going to hit market, only shared among scientists, but the question is how to make this work.
You aren't getting super useful answers here because you haven't provided enough data. Find out a lot more, share it here, and we can give you better advice.
I know, I apologize for being vague. I thought I could only focus on how to make server work for app. Since I never made an app. App seems easy to make. I already got xcode 6 beta, etc. I just don't want to ask too many questions on everything. I just want to focus on making app that connects to a server. And go from there. But seems it's more complicated than that. Ugh.
My thought: build a web app styled for mobile devices. Implement an image catalog and keyword search with paged (or infiniscroll) results. Once you have that you can move on to an app, that you won't finish, so document things well so a full timer or future intern can pick up where you left off.
Find small, impactful, measurable steps. Execute them and report to your superiors. Your goal is not a robust, internet-enabled client-server platform enabling immediate access to a huge catalog of images. That's asking to fail, and having 3/4 of that but nothing really working is the same as having nothing. Build small pieces that function, and build up from there.
Good luck.
-Lee
Interesting... I thought making a server and an app is small step, but designing them in depth was bigger steps. I will try and improvise as to your suggestion.
Thank you. I appreciate your feedback and points on my being unclear.