Added some shapes

Added Octagon, Hexagon, and prisms of each. Also added a rounding
function for use in octagons and hexagons
removed the n-gon prism functions

Will add them back in in a similar manner to the cylinder.
Added new shapes to ChoiceFunct()

Added a new page to the selector menu and added if statements for each
of the 4 new shapes. I copied these ifs from the circle (and cylinder)
if and changed variable names to suit the n-gons.
moved if statement that shows the second page

I did this so that it shows properly when it says "building a ..." and
ask to calculate
Some optimizations

I have replaced "navigateTo(0, 0) turn to face 0" with goHome() in the
shapes that used those patterns. I also moved goHome() into
Choicefunct() for faster cylinders and prisms
Modified code for the future

Added z movement for the future. It is part of navigateTo(), if
navigateTo() is called with only 2 arguments no z movements will occur
keeping it compatible with all previous calls to navigateTo()
Added more future support

though I've also made goHome() use navigateTo(0, 0, 0) which uses
moveZ(). added a small utility function turnToFace()
Found the bug

I accidentally left in the for loops that moved cylinder like shapes
back to their start height, so it would move back to home then go down
height leaving it far below start
More preparation for the future

Made navgateTo() more useful, you can now tell it to move z first by
passing true as the fourth variable
Bug o.0

I'm bad at this lol
Some documentation
Merge pull request #19 from Happydude11209/master

Lots of changes, mainly n-gons