What causes the colors we see in eyes?
The colour of human eyes is determined by the pigmentation present and the scattering of light. Variance in the colour and density of the pigments affects how light is absorbed and reflected causing the different iris colours we see. Wiki has a fairly comprehensive coverage on the topic so,I'll use a few of the wikipedia examples to explain how the pigmentation and scattering of light interact to give colours:

Blue eye colour is the result of pigment in low concentration and Rayleigh scattering (or Tyndall effect) of the short light wavelengths (blue is short, red is long).


  "There is no blue pigmentation either in the iris or in the ocular
  fluid. Dissection reveals that the iris pigment epithelium is brownish
  black due to the presence of melanin. Unlike brown eyes, blue eyes
  have low concentrations of melanin in the stroma of the iris, which
  lies in front of the dark epithelium. Longer wavelengths of light tend
  to be absorbed by the dark underlying epithelium, while shorter
  wavelengths are reflected and undergo Rayleigh scattering in the
  turbid medium of the stroma. This is the same frequency-dependence
  of scattering that accounts for the blue appearance of the sky.
  The result is a "Tyndall blue" structural color that varies with
  external lighting conditions.


Brown eyes are the result of higher melanin concentrations which absorbs more of the light, reducing the amount of light being reflected.


  "In humans, brown eyes result from a relatively high concentration of
  melanin in the stroma of the iris, which causes light of both shorter
  and longer wavelengths to be absorbed."


Green eyes appear to be mid-ground between blue and brown, they have more pigment than blue but less than brown.


  "As in the case of blue eyes, the color of green eyes does not result
  simply from the pigmentation of the iris. Rather, its appearance is
  caused by the combination of an amber or light brown pigmentation of
  the stroma, given by a low or moderate concentration of melanin, with
  the blue tone imparted by the Rayleigh scattering of the reflected
  light."


More can be read on this in these two studies: study 1 &amp; study 2

What is Rayleigh scattering / the Tyndall effect and why do they turn eyes blue?

I shall refer to this as the Tyndall effect but in the literature both Rayleigh and Tyndall are used because they are apparently very similar though Tyndall occurs with much larger particles. The Tyndall effect is caused by the variable scattering of light by particles depending on the wavelength of the light and relative size of the particles. Shorter wavelength lights are scattered more than the longer ones (so more red light is absorb than blue) which means more blue light is reflected. When more melanin is present in the iris it will better absorb the short wavelength light than when there is little melanin, therefore, people with low melanin levels appear to have blue eyes.


  "An analogy to this wavelength dependency is that longwave electromagnetic waves such as radio waves are able to pass through the walls of buildings, while shortwave electromagnetic waves such as light waves are stopped and reflected by the walls."


Why do eye colours change?

Again, wikipedia has a fairly thorough section on this and I will just summarise and directly quote it. Eye colour can change because the melanocytes responsible for the pigments have to continually produce pigment and, just like those causing colour in hair, they can become less productive (which is why we have grey hair) and this happens more with age. Infants often have blue eyes that turn dark, just like yours did, because the melanin is gradually accumulated - it just takes time for enough pigment to build up and allow the eye colour to match it's genetic determinants:


  "Most babies who have European ancestry have light-colored eyes before the age of one. As the child develops, melanocytes (cells found within the iris of human eyes, as well as skin and hair follicles) slowly begin to produce melanin. Because melanocyte cells continually produce pigment, in theory eye color can be changed. Most eye changes happen when the infant is around one year old, although it can happen up to three years of age. Observing the iris of an infant from the side using only transmitted light with no reflection from the back of the iris, it is possible to detect the presence or absence of low levels of melanin. An iris that appears blue under this method of observation is more likely to remain blue as the infant ages. An iris that appears golden contains some melanin even at this early age and is likely to turn green or brown as the infant ages.
  Changes (lightening or darkening) of eye colors during puberty, early childhood, pregnancy, and sometimes after serious trauma (like heterochromia) do represent cause for plausible argument to state that some eyes can or do change, based on chemical reactions and hormonal changes within the body.
  ... eye color over time can be subject to change, and major demelanization of the iris may also be genetically determined."


In this study 10-15% of those studied had changes in eye colour beyond childhood so, al though colour is generally stable past childhood, it is not uncommon for eyes to change, and this is likely due to changes in melanin composition. This study is an example of clour change in birds too.

A side note: Animals with other colours

It is common for animals to have other eye colours, for example Blackbirds (Turdus merula) have an Orange eye, which is caused by Carotenoid pigments, rather than melanin as in humans. The reason they have this could be as an indicator of quality in courtship - carotenoids are hard to get, males with bright orange eyes therefore have access to good food resources, and female blackbirds find that attractive. (This section is all from my memory after a talk with a tutor on my undergrad field course in the Isles of Scilly).