Displaying Subpages while on Parent page?

This is pretty easy, as WordPress sets css classes for the parent pages.
Default we hide all sublists (ul) from the menu with

.menu ul {
    display: none;
}

Then when the parent page is selected we use the css classes that are set by WordPress to show the sublists again.

.menu .current_page_ancestor, .menu .current_page_parent {
    display: block;
}

So all you need is this in your template

Template:

<ul class="menu">
    <?php wp_list_pages('title_li=') ?>
</ul>

and this in your css file.

CSS:

.menu ul {
    display: none;
}

.menu .current_page_ancestor > ul, .menu .current_page_parent > ul {
    display: block;
}