If you take a look at the source code, you'll see how their site works. Basically, all content is queried and displayed in its own div on the page. But most content, except for the desired content, is hidden by default. And then jQuery is used to hide or show what is selected via the navigation. The hash tags also represent a direct link to a particular div. It's actually pretty simple.
Step 1. Query your posts/pages/custom post types depending on what you want displayed and put them in their own divs on the home page template. (Give each div a unique ID.)